@camstack/addon-post-analysis 1.2.271 → 1.2.273
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/{dist-K6zDULiD.mjs → dist-PZVHV70g.mjs} +299 -65
- package/dist/{dist-DTeAk1Ce.js → dist-m5QdWXqR.js} +298 -82
- package/dist/embedding-encoder/index.js +1 -1
- package/dist/embedding-encoder/index.mjs +1 -1
- package/dist/pipeline-analytics/_stub.js +2 -2
- package/dist/pipeline-analytics/{_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-Bs8m-J-O.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-FrVPrAXW.mjs} +2 -2
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-BhgGVqqB.mjs +26 -0
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-mG9AoIzw.mjs +26 -0
- package/dist/pipeline-analytics/{hostInit-jMBJBSqj.mjs → hostInit-jsytt0xF.mjs} +2 -2
- package/dist/pipeline-analytics/index.js +21 -433
- package/dist/pipeline-analytics/index.mjs +21 -433
- package/dist/pipeline-analytics/remoteEntry.js +1 -1
- package/package.json +1 -4
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-B0sS9pCe.mjs +0 -26
- package/dist/pipeline-analytics/_virtual_mf___mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_ui_mf_2_library__loadShare__.js-C5WB_ysd.mjs +0 -26
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as
|
|
1
|
+
import { $ as TrackSourceSchema, $t as literal, A as NcRuleInputSchema, At as resolveLocationMode, B as OpsLogEntrySchema, Bt as CamProfileSchema, C as MediaFileKindEnum, Ct as occupancyScope, Dt as plateGalleryCapability, E as NC_DEFAULT_SNOOZE_MINUTES, Et as pipelineAnalyticsCapability, F as NcSnoozeInputSchema, Ft as systemEventFilterApplies, G as SCENE_DEFAULT_ANCHOR_THRESHOLD, Gt as hydrateSchema, H as RECORDING_EXPORT_MAX_READ_BYTES, Ht as createEvent, I as NcSnoozeSchema, It as vectorDimFromBase64, J as SceneMonitorSchema, Jt as sleep$1, K as SCENE_DEFAULT_UNCOVERED_POLICY, Kt as isDeviceScopedCap, L as NcSnoozeSuppressedSchema, Lt as zoneAnalyticsCapability, M as NcRuleSchema, Mt as sceneMonitorCapability, N as NcRuleTargetSchema, Nt as storageOccupancyCapability, O as NC_TAXONOMY, Ot as readDeviceStateFrom, P as NcScheduleSchema, Pt as subKindsOf, Q as TimelapseRuleSchema, Qt as discriminatedUnion, R as NcSystemEventKindSchema, Rt as errMsg$1, S as MOTION_CLOSE_AFTER_MS, St as notificationRulesCapability, T as NC_CONDITION_CATALOG, Tt as pickClusterStepModels, U as RetrainStatusSchema, Ut as customAction, Vt as DeviceType, Wt as defineCustomActions, X as TimelapseRuleInputSchema, Xt as array, Y as TIMELAPSE_DENSE_FLOOR_SEC, Yt as _enum, Z as TimelapseRulePatchSchema, Zt as boolean, _ as FailureCounters, _t as isMediaOwnerType, a as CLUSTER_MODEL_SCOPED_STEPS, an as unknown, at as buildEventKindDescriptor, b as MAX_BIRTH_DECISION_RECORDS, bt as kebabToCamel, dt as evictionPolicyOfLocation, en as number, et as addonWidgetsSourceCapability, f as DeclaredDevices, ft as faceGalleryCapability, g as FULL_IMAGE_BBOX, gt as isEventOwnerType, h as FIRST_LEVEL_MACRO_CLASSES, ht as isDetectionMacroClass, i as BirthDecisionRecordSchema, in as string, it as audioModeOf, j as NcRulePatchSchema, k as NcConditionDescriptorSchema, kt as readTimelapseGeneratedAt, lt as encodeVectorBase64, m as EVENT_OWNER_TYPES, n as ArchivedDebugNoteSchema, nn as partialRecord, nt as assertTimelapseCadences, o as COCO_TO_MACRO, on as EventCategory, ot as cosineSimilarity$1, p as EVENT_KIND_BY_CAP, pt as failureContributionCapability, q as SCENE_DIVERGED, qt as nodePin, r as BaseDevice, rn as record, rt as audioMetricsCapability, s as DEFAULT_EVENT_COLOR, st as deriveRecordingMode, t as AUDIO_MACRO_LABELS, tn as object, tt as alarmPanelCapability, u as DETECTION_MACRO_CLASSES, ut as evaluateSensorEdge, v as LabelAttributionSchema, vt as isScheduleActive, w as NC_ALARM_SYSTEM_EVENT_KINDS, xt as mayWriteToLocation, y as MAX_ARCHIVED_DEBUG_NOTES, yt as isSourceCap, z as NcTaxonomySchema, zt as BaseAddon } from "../dist-PZVHV70g.mjs";
|
|
2
2
|
import { t as __exportAll } from "../embedding-encoder/index.mjs";
|
|
3
3
|
import * as fs from "node:fs";
|
|
4
4
|
import { promises } from "node:fs";
|
|
@@ -47641,369 +47641,6 @@ async function retentionScopeDeviceIds(deps, onError) {
|
|
|
47641
47641
|
return [...ids];
|
|
47642
47642
|
}
|
|
47643
47643
|
//#endregion
|
|
47644
|
-
//#region src/pipeline-analytics/videoclip-visits.ts
|
|
47645
|
-
/**
|
|
47646
|
-
* Videoclip visits — the grain a clip should have on an events-mode camera.
|
|
47647
|
-
*
|
|
47648
|
-
* Disk writes one fMP4 per ffmpeg roll (~8–12 s). The recorder calendar merges
|
|
47649
|
-
* only gaps ≤ 5 s, so a single pantry walk shows up as several availability
|
|
47650
|
-
* ranges with ~8 s GOP holes between them. Analytics then mints one 15 s clip
|
|
47651
|
-
* per motion heartbeat. A *visit* is the keep-window those fragments belong
|
|
47652
|
-
* to: cluster availability with {@link VISIT_MERGE_GAP_MS}, annotate with
|
|
47653
|
-
* overlapping events. No second copy of the media; the files stay the source
|
|
47654
|
-
* of truth.
|
|
47655
|
-
*/
|
|
47656
|
-
/** Synthetic event-id slot in `analytics:<start>:<end>:<id>` for a visit clip. */
|
|
47657
|
-
var VISIT_EVENT_ID = "visit";
|
|
47658
|
-
function clusterFootageVisits(ranges, gapMs = VISIT_MERGE_GAP_MS) {
|
|
47659
|
-
if (ranges.length === 0) return [];
|
|
47660
|
-
const sorted = [...ranges].toSorted((a, b) => a.startMs - b.startMs);
|
|
47661
|
-
const visits = [];
|
|
47662
|
-
let pieces = [sorted[0]];
|
|
47663
|
-
let endMs = sorted[0].endMs;
|
|
47664
|
-
for (let i = 1; i < sorted.length; i++) {
|
|
47665
|
-
const next = sorted[i];
|
|
47666
|
-
if (next.startMs <= endMs + gapMs) {
|
|
47667
|
-
pieces.push(next);
|
|
47668
|
-
endMs = Math.max(endMs, next.endMs);
|
|
47669
|
-
continue;
|
|
47670
|
-
}
|
|
47671
|
-
visits.push(finishVisit(pieces, endMs));
|
|
47672
|
-
pieces = [next];
|
|
47673
|
-
endMs = next.endMs;
|
|
47674
|
-
}
|
|
47675
|
-
visits.push(finishVisit(pieces, endMs));
|
|
47676
|
-
return visits;
|
|
47677
|
-
}
|
|
47678
|
-
function finishVisit(pieces, endMs) {
|
|
47679
|
-
const holes = [];
|
|
47680
|
-
for (let i = 1; i < pieces.length; i++) {
|
|
47681
|
-
const prevEnd = pieces[i - 1].endMs;
|
|
47682
|
-
const nextStart = pieces[i].startMs;
|
|
47683
|
-
if (nextStart > prevEnd) holes.push({
|
|
47684
|
-
startMs: prevEnd,
|
|
47685
|
-
endMs: nextStart
|
|
47686
|
-
});
|
|
47687
|
-
}
|
|
47688
|
-
return {
|
|
47689
|
-
startMs: pieces[0].startMs,
|
|
47690
|
-
endMs,
|
|
47691
|
-
ranges: pieces,
|
|
47692
|
-
holes
|
|
47693
|
-
};
|
|
47694
|
-
}
|
|
47695
|
-
var KIND_ORDER = [
|
|
47696
|
-
"object",
|
|
47697
|
-
"motion",
|
|
47698
|
-
"audio"
|
|
47699
|
-
];
|
|
47700
|
-
function eventOverlapsVisit(event, visit, pad) {
|
|
47701
|
-
if (event.timestamp >= visit.startMs && event.timestamp <= visit.endMs) return true;
|
|
47702
|
-
const windowStart = event.timestamp - pad.preMs;
|
|
47703
|
-
const windowEnd = event.timestamp + pad.postMs;
|
|
47704
|
-
return windowStart < visit.endMs && windowEnd > visit.startMs;
|
|
47705
|
-
}
|
|
47706
|
-
function dominantKind(attached) {
|
|
47707
|
-
for (const kind of KIND_ORDER) if (attached.some((a) => a.kind === kind)) return kind;
|
|
47708
|
-
return "motion";
|
|
47709
|
-
}
|
|
47710
|
-
/**
|
|
47711
|
-
* The instant a recorded still can actually be decoded inside a visit: the
|
|
47712
|
-
* midpoint of its LONGEST contiguous range.
|
|
47713
|
-
*
|
|
47714
|
-
* NOT the midpoint of the visit. A visit spans its holes by construction (it is
|
|
47715
|
-
* ranges glued across gaps up to `VISIT_MERGE_GAP_MS`), so the naive midpoint
|
|
47716
|
-
* lands in dead air roughly as often as not and the recorder's still route
|
|
47717
|
-
* answers 204 for a visit with plenty of footage.
|
|
47718
|
-
*/
|
|
47719
|
-
function stillInstantMs(ranges) {
|
|
47720
|
-
let best;
|
|
47721
|
-
for (const range of ranges) if (best === void 0 || range.endMs - range.startMs > best.endMs - best.startMs) best = range;
|
|
47722
|
-
if (best === void 0) return void 0;
|
|
47723
|
-
return Math.floor((best.startMs + best.endMs) / 2);
|
|
47724
|
-
}
|
|
47725
|
-
/**
|
|
47726
|
-
* The distinct object classes attached to a visit, most frequent first,
|
|
47727
|
-
* capped at {@link MAX_CLIP_LABELS}. Empty when nothing classified overlapped
|
|
47728
|
-
* — the caller then omits the field so a motion/audio-only visit keeps its
|
|
47729
|
-
* kind label instead of carrying an empty array every consumer length-checks.
|
|
47730
|
-
*/
|
|
47731
|
-
function dominantLabels(attached) {
|
|
47732
|
-
const counts = /* @__PURE__ */ new Map();
|
|
47733
|
-
for (const a of attached) {
|
|
47734
|
-
if (a.kind !== "object") continue;
|
|
47735
|
-
const name = a.event.className;
|
|
47736
|
-
if (typeof name !== "string" || name.length === 0) continue;
|
|
47737
|
-
counts.set(name, (counts.get(name) ?? 0) + 1);
|
|
47738
|
-
}
|
|
47739
|
-
return [...counts.entries()].toSorted((x, y) => y[1] - x[1]).slice(0, 3).map(([name]) => name);
|
|
47740
|
-
}
|
|
47741
|
-
function visitsToClips(visits, events, pad, vouched) {
|
|
47742
|
-
const tagged = [
|
|
47743
|
-
...events.object.map((event) => ({
|
|
47744
|
-
kind: "object",
|
|
47745
|
-
event
|
|
47746
|
-
})),
|
|
47747
|
-
...events.motion.map((event) => ({
|
|
47748
|
-
kind: "motion",
|
|
47749
|
-
event
|
|
47750
|
-
})),
|
|
47751
|
-
...events.audio.map((event) => ({
|
|
47752
|
-
kind: "audio",
|
|
47753
|
-
event
|
|
47754
|
-
}))
|
|
47755
|
-
];
|
|
47756
|
-
return visits.map((visit) => {
|
|
47757
|
-
const attached = tagged.filter((t) => eventOverlapsVisit(t.event, visit, pad));
|
|
47758
|
-
const kind = dominantKind(attached);
|
|
47759
|
-
const withThumb = attached.find((a) => a.kind === kind && a.event.mediaUrl && vouched.has(a.event.id)) ?? attached.find((a) => a.event.mediaUrl && vouched.has(a.event.id));
|
|
47760
|
-
const stillAtMs = stillInstantMs(visit.ranges);
|
|
47761
|
-
const labels = dominantLabels(attached);
|
|
47762
|
-
return {
|
|
47763
|
-
id: `analytics:${visit.startMs}:${visit.endMs}:${VISIT_EVENT_ID}`,
|
|
47764
|
-
source: "analytics",
|
|
47765
|
-
kind,
|
|
47766
|
-
timeRange: {
|
|
47767
|
-
startMs: visit.startMs,
|
|
47768
|
-
endMs: visit.endMs
|
|
47769
|
-
},
|
|
47770
|
-
...withThumb?.event.mediaUrl !== void 0 ? { thumbnail: withThumb.event.mediaUrl } : {},
|
|
47771
|
-
...stillAtMs !== void 0 ? { stillAtMs } : {},
|
|
47772
|
-
eventIds: attached.slice(0, 24).map((a) => a.event.id),
|
|
47773
|
-
eventCount: attached.length,
|
|
47774
|
-
holes: [...visit.holes],
|
|
47775
|
-
...labels.length > 0 ? { labels } : {}
|
|
47776
|
-
};
|
|
47777
|
-
}).toSorted((a, b) => b.timeRange.startMs - a.timeRange.startMs);
|
|
47778
|
-
}
|
|
47779
|
-
//#endregion
|
|
47780
|
-
//#region src/pipeline-analytics/videoclips-provider.ts
|
|
47781
|
-
/**
|
|
47782
|
-
* Default `videoclips` provider — composes recorded footage visits with the
|
|
47783
|
-
* analytics event log. A clip is a time-WINDOW over existing footage, never a
|
|
47784
|
-
* separate file: `getClipPlayback` resolves to
|
|
47785
|
-
* `recording.getPlaybackManifest(startMs, endMs)`.
|
|
47786
|
-
*
|
|
47787
|
-
* When availability is present the grain is a *visit* (events-mode keep-window
|
|
47788
|
-
* clustered at `VISIT_MERGE_GAP_MS`), not one clip per motion heartbeat. The
|
|
47789
|
-
* clip id still encodes the window (`analytics:<startMs>:<endMs>:visit`) so
|
|
47790
|
-
* playback is self-contained. Without availability (or when that read fails)
|
|
47791
|
-
* the provider falls back to per-event padded windows.
|
|
47792
|
-
*
|
|
47793
|
-
* Pure helpers (`eventsToClips` / `clusterFootageVisits` / `clipIdFor` /
|
|
47794
|
-
* `parseClipId`) are unit-tested in isolation; the provider factory wires
|
|
47795
|
-
* injected fetch/resolve deps so the compose logic is testable without I/O.
|
|
47796
|
-
*/
|
|
47797
|
-
var SOURCE = "analytics";
|
|
47798
|
-
/**
|
|
47799
|
-
* Backstop on the ANNOTATION read — never on the clip list.
|
|
47800
|
-
*
|
|
47801
|
-
* A visit is annotated by every event inside it, so the clip `limit` must not
|
|
47802
|
-
* reach this fetch (one 615 visit legitimately spans 2 345 motion rows). This
|
|
47803
|
-
* bound exists only so a pathological camera-day cannot pull an unbounded page:
|
|
47804
|
-
* the store orders `timestamp DESC`, so a truncation drops the OLDEST rows and
|
|
47805
|
-
* the EARLIEST visits silently lose their annotations — which is why hitting it
|
|
47806
|
-
* is logged, per camera, rather than absorbed.
|
|
47807
|
-
*/
|
|
47808
|
-
var VISIT_EVENT_FETCH_LIMIT = 5e3;
|
|
47809
|
-
function clipIdFor(eventId, startMs, endMs) {
|
|
47810
|
-
return `${SOURCE}:${startMs}:${endMs}:${eventId}`;
|
|
47811
|
-
}
|
|
47812
|
-
/** Parse a default-provider clip id back into its window + event id. Returns
|
|
47813
|
-
* `null` for any id this provider did not mint (e.g. a native clip id). */
|
|
47814
|
-
function parseClipId(clipId) {
|
|
47815
|
-
const parts = clipId.split(":");
|
|
47816
|
-
if (parts.length < 4 || parts[0] !== SOURCE) return null;
|
|
47817
|
-
const startMs = Number(parts[1]);
|
|
47818
|
-
const endMs = Number(parts[2]);
|
|
47819
|
-
if (!Number.isFinite(startMs) || !Number.isFinite(endMs)) return null;
|
|
47820
|
-
const eventId = parts.slice(3).join(":");
|
|
47821
|
-
if (!eventId) return null;
|
|
47822
|
-
return {
|
|
47823
|
-
eventId,
|
|
47824
|
-
startMs,
|
|
47825
|
-
endMs
|
|
47826
|
-
};
|
|
47827
|
-
}
|
|
47828
|
-
/** Map per-kind events into time-ranged clips, newest-first. Pure. */
|
|
47829
|
-
function eventsToClips(events, pad, vouched) {
|
|
47830
|
-
const make = (e, kind) => {
|
|
47831
|
-
const startMs = e.timestamp - pad.preMs;
|
|
47832
|
-
const endMs = e.timestamp + pad.postMs;
|
|
47833
|
-
return {
|
|
47834
|
-
id: clipIdFor(e.id, startMs, endMs),
|
|
47835
|
-
source: SOURCE,
|
|
47836
|
-
kind,
|
|
47837
|
-
timeRange: {
|
|
47838
|
-
startMs,
|
|
47839
|
-
endMs
|
|
47840
|
-
},
|
|
47841
|
-
...e.mediaUrl !== void 0 && vouched.has(e.id) ? { thumbnail: e.mediaUrl } : {}
|
|
47842
|
-
};
|
|
47843
|
-
};
|
|
47844
|
-
return [
|
|
47845
|
-
...events.motion.map((e) => make(e, "motion")),
|
|
47846
|
-
...events.object.map((e) => make(e, "object")),
|
|
47847
|
-
...events.audio.map((e) => make(e, "audio"))
|
|
47848
|
-
].toSorted((a, b) => b.timeRange.startMs - a.timeRange.startMs);
|
|
47849
|
-
}
|
|
47850
|
-
/** Every id in the three buckets, in the order the composers tag them. */
|
|
47851
|
-
function allEventIds(events) {
|
|
47852
|
-
return [
|
|
47853
|
-
...events.motion,
|
|
47854
|
-
...events.object,
|
|
47855
|
-
...events.audio
|
|
47856
|
-
].map((e) => e.id);
|
|
47857
|
-
}
|
|
47858
|
-
/**
|
|
47859
|
-
* Resolve the event ids whose `mediaUrl` is backed by real bytes, mirroring
|
|
47860
|
-
* `resolveDefaultEventMedia`: the event's OWN media when it has any, else its
|
|
47861
|
-
* owning TRACK's. Up to four batched index reads — one PER EVENT KIND that has
|
|
47862
|
-
* any ids (D476: `motion` / `object` / `audio` are separate owner kinds now,
|
|
47863
|
-
* so a single combined read can no longer ask "does any of these ids own
|
|
47864
|
-
* media" — a motion id and an object id can be the same number post-D474 and
|
|
47865
|
-
* are answered by different rows) — plus the track fallback, only over the
|
|
47866
|
-
* object events the first pass did not already answer for (motion and audio
|
|
47867
|
-
* are trackless roots, so they never need it).
|
|
47868
|
-
*
|
|
47869
|
-
* THROWS on a failed read. The caller fails closed on the CLAIM and open on the
|
|
47870
|
-
* LIST; swallowing here would collapse those two opposite directions into one.
|
|
47871
|
-
*/
|
|
47872
|
-
async function resolveVouchedEvents(deviceId, events, fetchMediaOwners) {
|
|
47873
|
-
const ownMedia = /* @__PURE__ */ new Set();
|
|
47874
|
-
for (const ownerType of EVENT_OWNER_TYPES) {
|
|
47875
|
-
const ownerIds = events[ownerType].map((e) => e.id);
|
|
47876
|
-
if (ownerIds.length === 0) continue;
|
|
47877
|
-
const found = await fetchMediaOwners({
|
|
47878
|
-
deviceId,
|
|
47879
|
-
ownerKind: ownerType,
|
|
47880
|
-
ownerIds
|
|
47881
|
-
});
|
|
47882
|
-
for (const id of found) ownMedia.add(id);
|
|
47883
|
-
}
|
|
47884
|
-
const residualTracks = [];
|
|
47885
|
-
const seenTracks = /* @__PURE__ */ new Set();
|
|
47886
|
-
for (const event of events.object) {
|
|
47887
|
-
const trackId = event.trackId;
|
|
47888
|
-
if (trackId === void 0 || ownMedia.has(event.id) || seenTracks.has(trackId)) continue;
|
|
47889
|
-
seenTracks.add(trackId);
|
|
47890
|
-
residualTracks.push(trackId);
|
|
47891
|
-
}
|
|
47892
|
-
const trackMedia = residualTracks.length === 0 ? /* @__PURE__ */ new Set() : await fetchMediaOwners({
|
|
47893
|
-
deviceId,
|
|
47894
|
-
ownerKind: "track",
|
|
47895
|
-
ownerIds: residualTracks
|
|
47896
|
-
});
|
|
47897
|
-
const vouched = new Set(ownMedia);
|
|
47898
|
-
for (const event of events.object) {
|
|
47899
|
-
const trackId = event.trackId;
|
|
47900
|
-
if (trackId !== void 0 && trackMedia.has(trackId)) vouched.add(event.id);
|
|
47901
|
-
}
|
|
47902
|
-
return vouched;
|
|
47903
|
-
}
|
|
47904
|
-
/** Keep only clips that actually touch the caller's window. The reads are
|
|
47905
|
-
* widened by {@link leftOverhangMs}; the ANSWER is not. */
|
|
47906
|
-
function intersectsWindow(clip, since, until) {
|
|
47907
|
-
return clip.timeRange.startMs < until && clip.timeRange.endMs > since;
|
|
47908
|
-
}
|
|
47909
|
-
/**
|
|
47910
|
-
* How far BEFORE `since` the event + availability reads must reach.
|
|
47911
|
-
*
|
|
47912
|
-
* A visit straddling `since` keeps its heartbeat rows and loses the transition
|
|
47913
|
-
* row — the only one that ever carries a snapshot — so the same visit shows a
|
|
47914
|
-
* picture or doesn't depending on where the operator scrolled. One wider range
|
|
47915
|
-
* scan on an indexed column buys a list that stops changing under the cursor.
|
|
47916
|
-
*/
|
|
47917
|
-
function leftOverhangMs(pad) {
|
|
47918
|
-
return VISIT_MERGE_GAP_MS + pad.preMs;
|
|
47919
|
-
}
|
|
47920
|
-
function createVideoclipsProvider(deps) {
|
|
47921
|
-
return {
|
|
47922
|
-
listClips: async ({ deviceId, since, until, limit }) => {
|
|
47923
|
-
const readSince = since - leftOverhangMs(deps.defaultPad);
|
|
47924
|
-
const events = await deps.fetchEvents({
|
|
47925
|
-
deviceId,
|
|
47926
|
-
since: readSince,
|
|
47927
|
-
until,
|
|
47928
|
-
limit: deps.fetchAvailability ? VISIT_EVENT_FETCH_LIMIT : limit
|
|
47929
|
-
});
|
|
47930
|
-
warnOnTruncatedFetch(deps, deviceId, events);
|
|
47931
|
-
let vouched = /* @__PURE__ */ new Set();
|
|
47932
|
-
try {
|
|
47933
|
-
vouched = await resolveVouchedEvents(deviceId, events, deps.fetchMediaOwners);
|
|
47934
|
-
} catch (err) {
|
|
47935
|
-
deps.logWarn?.("videoclips: media presence read failed — listing without thumbnails", {
|
|
47936
|
-
deviceId,
|
|
47937
|
-
events: allEventIds(events).length,
|
|
47938
|
-
error: err instanceof Error ? err.message : String(err)
|
|
47939
|
-
});
|
|
47940
|
-
}
|
|
47941
|
-
let clips = eventsToClips(events, deps.defaultPad, vouched);
|
|
47942
|
-
if (deps.fetchAvailability) try {
|
|
47943
|
-
clips = visitsToClips(clusterFootageVisits(await deps.fetchAvailability({
|
|
47944
|
-
deviceId,
|
|
47945
|
-
since: readSince,
|
|
47946
|
-
until
|
|
47947
|
-
}), VISIT_MERGE_GAP_MS), events, deps.defaultPad, vouched);
|
|
47948
|
-
} catch (err) {
|
|
47949
|
-
deps.logWarn?.("videoclips: availability read failed — listing unfiltered", {
|
|
47950
|
-
deviceId,
|
|
47951
|
-
error: err instanceof Error ? err.message : String(err)
|
|
47952
|
-
});
|
|
47953
|
-
}
|
|
47954
|
-
const inWindow = clips.filter((c) => intersectsWindow(c, since, until));
|
|
47955
|
-
const answer = limit != null ? inWindow.slice(0, limit) : inWindow;
|
|
47956
|
-
reportUnvouchedClips(deps, deviceId, answer);
|
|
47957
|
-
return answer;
|
|
47958
|
-
},
|
|
47959
|
-
getClipPlayback: async ({ deviceId, clipId }) => {
|
|
47960
|
-
const parsed = parseClipId(clipId);
|
|
47961
|
-
if (!parsed) throw new Error(`videoclips: unrecognized clipId "${clipId}"`);
|
|
47962
|
-
return deps.resolvePlayback({
|
|
47963
|
-
deviceId,
|
|
47964
|
-
startMs: parsed.startMs,
|
|
47965
|
-
endMs: parsed.endMs
|
|
47966
|
-
});
|
|
47967
|
-
}
|
|
47968
|
-
};
|
|
47969
|
-
}
|
|
47970
|
-
/** The annotation backstop biting is a SILENT loss of the earliest visits'
|
|
47971
|
-
* events — say so, per camera, instead of shipping a thinner list. */
|
|
47972
|
-
function warnOnTruncatedFetch(deps, deviceId, events) {
|
|
47973
|
-
if (!deps.fetchAvailability) return;
|
|
47974
|
-
const truncated = [
|
|
47975
|
-
"motion",
|
|
47976
|
-
"object",
|
|
47977
|
-
"audio"
|
|
47978
|
-
].filter((kind) => events[kind].length >= VISIT_EVENT_FETCH_LIMIT);
|
|
47979
|
-
if (truncated.length === 0) return;
|
|
47980
|
-
deps.logWarn?.("videoclips: annotation fetch truncated — earliest visits lose their events", {
|
|
47981
|
-
deviceId,
|
|
47982
|
-
kinds: truncated,
|
|
47983
|
-
limit: VISIT_EVENT_FETCH_LIMIT
|
|
47984
|
-
});
|
|
47985
|
-
}
|
|
47986
|
-
/** The operator's acceptance criterion as a number: a rising count on one
|
|
47987
|
-
* camera is its motion-snapshot capturer failing, not a quiet day. */
|
|
47988
|
-
function reportUnvouchedClips(deps, deviceId, clips) {
|
|
47989
|
-
const clipsWithoutStill = clips.filter((c) => c.thumbnail === void 0).length;
|
|
47990
|
-
if (clipsWithoutStill === 0) return;
|
|
47991
|
-
deps.logInfo?.("videoclips: visit has no vouched still", {
|
|
47992
|
-
deviceId,
|
|
47993
|
-
clipsWithoutStill,
|
|
47994
|
-
clips: clips.length
|
|
47995
|
-
});
|
|
47996
|
-
}
|
|
47997
|
-
//#endregion
|
|
47998
|
-
//#region src/pipeline-analytics/videoclips-shared.ts
|
|
47999
|
-
/** Stringify the numeric event ids of one bucket. Lossless. */
|
|
48000
|
-
function toEventLike(events) {
|
|
48001
|
-
return events.map((e) => ({
|
|
48002
|
-
...e,
|
|
48003
|
-
id: String(e.id)
|
|
48004
|
-
}));
|
|
48005
|
-
}
|
|
48006
|
-
//#endregion
|
|
48007
47644
|
//#region src/pipeline-analytics/viewer-settings-actions.ts
|
|
48008
47645
|
/**
|
|
48009
47646
|
* Viewer settings snapshots — hub-shared named blobs of the viewer's stores.
|
|
@@ -78550,7 +78187,7 @@ var PipelineAnalyticsAddon = class PipelineAnalyticsAddon extends BaseAddon {
|
|
|
78550
78187
|
await step("buildSceneMonitor", () => this.buildSceneMonitor(api, logger));
|
|
78551
78188
|
this.startSweepTimers();
|
|
78552
78189
|
this.ctx.logger.info("pipeline-analytics subscribers installed");
|
|
78553
|
-
const providers = await step("buildProviderRegistrations", () => this.buildProviderRegistrations(
|
|
78190
|
+
const providers = await step("buildProviderRegistrations", () => this.buildProviderRegistrations(stores, capProviders));
|
|
78554
78191
|
const isHub = ownNodeId === "hub";
|
|
78555
78192
|
const ncHandlers = isHub ? this.buildNcActionHandlers(api) : void 0;
|
|
78556
78193
|
this.discardJob = createDiscardJob({
|
|
@@ -80954,71 +80591,8 @@ var PipelineAnalyticsAddon = class PipelineAnalyticsAddon extends BaseAddon {
|
|
|
80954
80591
|
});
|
|
80955
80592
|
}
|
|
80956
80593
|
}
|
|
80957
|
-
buildProviderRegistrations(
|
|
80594
|
+
buildProviderRegistrations(stores, providers) {
|
|
80958
80595
|
const widgetsProvider = createAnalyticsWidgetsProvider();
|
|
80959
|
-
const videoclipsProvider = createVideoclipsProvider({
|
|
80960
|
-
defaultPad: EVENT_PAD_MS,
|
|
80961
|
-
fetchEvents: async ({ deviceId, since, until, limit }) => {
|
|
80962
|
-
const [motion, object, audio] = await Promise.all([
|
|
80963
|
-
this.getMotionEvents({
|
|
80964
|
-
deviceId,
|
|
80965
|
-
since,
|
|
80966
|
-
until,
|
|
80967
|
-
limit,
|
|
80968
|
-
projection: "slim"
|
|
80969
|
-
}),
|
|
80970
|
-
this.getObjectEvents({
|
|
80971
|
-
deviceId,
|
|
80972
|
-
since,
|
|
80973
|
-
until,
|
|
80974
|
-
limit,
|
|
80975
|
-
projection: "slim"
|
|
80976
|
-
}),
|
|
80977
|
-
this.getAudioEvents({
|
|
80978
|
-
deviceId,
|
|
80979
|
-
since,
|
|
80980
|
-
until,
|
|
80981
|
-
limit,
|
|
80982
|
-
projection: "slim"
|
|
80983
|
-
})
|
|
80984
|
-
]);
|
|
80985
|
-
return {
|
|
80986
|
-
motion: toEventLike(motion),
|
|
80987
|
-
object: toEventLike(object),
|
|
80988
|
-
audio: toEventLike(audio)
|
|
80989
|
-
};
|
|
80990
|
-
},
|
|
80991
|
-
fetchMediaOwners: async ({ deviceId, ownerKind, ownerIds }) => {
|
|
80992
|
-
return stores.mediaStore.ownersWithMedia(ownerKind, ownerIds, deviceId);
|
|
80993
|
-
},
|
|
80994
|
-
fetchAvailability: async ({ deviceId, since, until }) => {
|
|
80995
|
-
return (await api.recording.getAvailability.query({
|
|
80996
|
-
deviceId,
|
|
80997
|
-
fromMs: since,
|
|
80998
|
-
toMs: until
|
|
80999
|
-
})).ranges;
|
|
81000
|
-
},
|
|
81001
|
-
logWarn: (message, meta) => this.ctx.logger.warn(message, {
|
|
81002
|
-
tags: { deviceId: Number(meta["deviceId"]) },
|
|
81003
|
-
meta
|
|
81004
|
-
}),
|
|
81005
|
-
logInfo: (message, meta) => this.ctx.logger.info(message, {
|
|
81006
|
-
tags: { deviceId: Number(meta["deviceId"]) },
|
|
81007
|
-
meta
|
|
81008
|
-
}),
|
|
81009
|
-
resolvePlayback: async ({ deviceId, startMs, endMs }) => {
|
|
81010
|
-
const manifest = await api.recording.getPlaybackManifest.query({
|
|
81011
|
-
deviceId,
|
|
81012
|
-
fromMs: startMs,
|
|
81013
|
-
toMs: endMs
|
|
81014
|
-
});
|
|
81015
|
-
if (manifest.playbackUrl == null) throw new Error(`videoclips: no footage for clip window [${startMs},${endMs}] on device ${deviceId}`);
|
|
81016
|
-
return {
|
|
81017
|
-
playbackUrl: manifest.playbackUrl,
|
|
81018
|
-
playbackEndpoints: manifest.playbackEndpoints
|
|
81019
|
-
};
|
|
81020
|
-
}
|
|
81021
|
-
});
|
|
81022
80596
|
const faceGallery = new FaceGalleryProvider({
|
|
81023
80597
|
identityStore: stores.identityStore,
|
|
81024
80598
|
faceStore: stores.faceStore,
|
|
@@ -81081,10 +80655,6 @@ var PipelineAnalyticsAddon = class PipelineAnalyticsAddon extends BaseAddon {
|
|
|
81081
80655
|
capability: addonWidgetsSourceCapability,
|
|
81082
80656
|
provider: widgetsProvider
|
|
81083
80657
|
},
|
|
81084
|
-
{
|
|
81085
|
-
capability: videoclipsCapability,
|
|
81086
|
-
provider: videoclipsProvider
|
|
81087
|
-
},
|
|
81088
80658
|
{
|
|
81089
80659
|
capability: faceGalleryCapability,
|
|
81090
80660
|
provider: faceGallery
|
|
@@ -85737,6 +85307,24 @@ var PipelineAnalyticsAddon = class PipelineAnalyticsAddon extends BaseAddon {
|
|
|
85737
85307
|
return this.queryFacade.listEventMedia(input);
|
|
85738
85308
|
}
|
|
85739
85309
|
/**
|
|
85310
|
+
* Which of `ownerIds` hold at least ONE media row — the media-PRESENCE probe,
|
|
85311
|
+
* on the wire because the `videoclips` source lives in the addon that owns
|
|
85312
|
+
* the FOOTAGE now (D560).
|
|
85313
|
+
*
|
|
85314
|
+
* A pass-through to {@link MediaStore.ownersWithMedia}, which batches by
|
|
85315
|
+
* `whereIn` and pages: the N+1 this exists to prevent is one query per owner,
|
|
85316
|
+
* and a process boundary in front of it would multiply that, not absorb it.
|
|
85317
|
+
*
|
|
85318
|
+
* It THROWS rather than answering partially, and the empty ask costs no read
|
|
85319
|
+
* at all — a caller with nothing to probe must not pay a round trip for it.
|
|
85320
|
+
*/
|
|
85321
|
+
async ownersWithMedia(input) {
|
|
85322
|
+
if (input.ownerIds.length === 0) return [];
|
|
85323
|
+
const store = this.mediaStore;
|
|
85324
|
+
if (store === null) throw new Error(`pipelineAnalytics.ownersWithMedia: the media index is not open on this node — refusing rather than answering "these owners have nothing" (device ${String(input.deviceId)})`);
|
|
85325
|
+
return [...await store.ownersWithMedia(input.ownerKind, input.ownerIds, input.deviceId)];
|
|
85326
|
+
}
|
|
85327
|
+
/**
|
|
85740
85328
|
* Search object events by text using CLIP cosine similarity.
|
|
85741
85329
|
*
|
|
85742
85330
|
* Flow:
|
|
@@ -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_pipeline_analytics_widgets-
|
|
33
|
+
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_pipeline_analytics_widgets-FrVPrAXW.mjs")).catch((e) => {
|
|
34
34
|
throw l = void 0, e;
|
|
35
35
|
}), l;
|
|
36
36
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-post-analysis",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.273",
|
|
4
4
|
"description": "Post-Analysis bundle — enrichment, embedding-encoder, pipeline-analytics. Multi-entry npm package shipping addons that consume pipeline output.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|
|
@@ -87,9 +87,6 @@
|
|
|
87
87
|
{
|
|
88
88
|
"name": "addon-widgets-source"
|
|
89
89
|
},
|
|
90
|
-
{
|
|
91
|
-
"name": "videoclips"
|
|
92
|
-
},
|
|
93
90
|
{
|
|
94
91
|
"name": "face-gallery"
|
|
95
92
|
},
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
//#region \0virtual:mf:__mfe_internal__addon_pipeline_analytics_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js
|
|
2
|
-
var e = "__mf_init__virtual:mf:__mfe_internal__addon_pipeline_analytics_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.ARCHIVED_DEBUG_NOTES_DEFAULT_LIMIT, e.AUDIO_ANALYSIS_CAP_NAME, e.AUDIO_BACKEND_CHOICES, e.AUDIO_CHUNK_FORMATS, e.AUDIO_MACRO_LABELS, e.AUDIO_PRESETS, e.AUDIO_SCALE_EPOCH_ISO, e.AUDIO_SCALE_EPOCH_MS, 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.AnalyticsLtsSeriesSchema, e.ApiKeyRecordSchema, e.ApiKeySummarySchema, e.ArchiveEntrySchema, e.ArchiveManifestSchema, e.ArchivedDebugNoteQueryInputSchema, e.ArchivedDebugNoteSchema, e.AttachmentMediaTypeSchema, e.AttachmentSchema, e.AudioAnalysisResultSchema, e.AudioAnalysisSettingsSchema, e.AudioAttachDeviceInputSchema, e.AudioAttachDeviceResultSchema, e.AudioChunkFormatSchema, e.AudioChunkInputSchema, e.AudioClassSummarySchema, e.AudioClassificationLabelSchema, e.AudioClassificationResultSchema, e.AudioCodecInfoSchema, e.AudioDecodeSessionConfigSchema, e.AudioDetachDeviceResultSchema, e.AudioEncodeSchema, e.AudioEncodeSessionConfigSchema, e.AudioEncodedChunkSchema, e.AudioEventSchema, e.AudioLevelSchema, e.AudioMetricsHistoryPointSchema, e.AudioMetricsHistorySchema, e.AudioMetricsSnapshotSchema, e.AudioPcmChunkSchema, e.AudioStreamPickSchema, 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.BIRTH_DECISION_DEFAULT_LIMIT, e.BOOT_RECOVERY_BACKOFF_MS, e.BacklightModeSchema, e.BackupDestinationInfoSchema, e.BackupEntrySchema, e.BackupRunPhaseSchema, e.BackupRunSchema, e.BackupRunStateSchema, e.BackupTriggerResultSchema, e.BaseAddon, e.BaseDevice, e.BaseDeviceProvider, e.BatteryStatusSchema, e.BinaryStatusSchema, e.BirthDecisionQueryInputSchema, e.BirthDecisionRecordSchema, e.BirthDecisionVerdictSchema, 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.BulkRecordSchema, 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.CLASS_MAP_MACRO_TARGETS, e.CLUSTER_MODEL_SCOPED_STEPS, e.CLUSTER_MODEL_SECTION_ID, e.CLUSTER_STEP_SETTING_FIELDS, e.COCO_80_LABELS, e.COCO_TO_MACRO, e.CONNECTION_TEST_TIMEOUT_MS, e.CONTAINER_CHILD_PRIORITY, 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.CameraOccupancySnapshotForDeviceSchema, 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_CLUSTER_STEP_MODELS, e.DEFAULT_CLUSTER_STEP_SETTINGS, 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_FIRST_SIGHTING_FRESHNESS_MS, e.DEFAULT_MIN_LANDMARK_FACE_SIZE_PX, e.DEFAULT_NATIVE_LEASE_SETTINGS, e.DEFAULT_OVERLAY_LAYERS, e.DEFAULT_POOL_MEMORY_POLICY, e.DEFAULT_RECORDING_PROFILES, e.DEFAULT_RETENTION, e.DEFAULT_RUNTIME_STATE_DURABILITY, e.DEFAULT_TIMELAPSE_PREVIEW_TEXT, e.DEFAULT_TOKEN_EXPIRY, e.DERIVED_CAMERA_SILENCED_CAP_NAMES, 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_CHILDREN_BATCH_MAX, e.DEVICE_PROFILES, e.DEVICE_RESTORE_RETRY_CONCURRENCY, e.DEVICE_RESTORE_RETRY_DELAYS_MS, 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.DetectionCatalogClassMapSchema, e.DetectionSourceSchema, e.DetectionSourcesSchema, e.DeviceCodeSeveritySchema, e.DeviceConfig, e.DeviceDiscoveryStatusSchema, e.DeviceExportExposeInputSchema, e.DeviceExportStatusSchema, e.DeviceExportUnexposeInputSchema, e.DeviceFeature, e.DeviceInfoSchema, e.DeviceNetworkStatsSchema, e.DeviceRestoreRetryScheduler, e.DeviceRole, e.DeviceRuntimeState, e.DeviceSelectorSchema, e.DeviceStatusSchema, e.DeviceType, e.DiagnosticIdSchema, e.DiagnosticWindowPatchSchema, e.DiagnosticWindowSchema, e.DiscoveredChildDeviceSchema, e.DiscoveredChildStatusSchema, e.DiscoveredDeviceSchema, e.DiscoveredTargetSchema, e.DiskReconcileJobSchema, e.DisposerChain, e.DoorbellPressEventSchema, e.DoorbellStatusSchema, e.EVENTFUL_CAP_NAMES, e.EVENT_DENSITY_BATCH_MAX, e.EVENT_KIND_BY_CAP, e.EVENT_OWNER_TYPES, 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.EventDensityBucketSchema, e.EventDensityForDeviceSchema, 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.EventOwnerTypeSchema, 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.FIRST_LEVEL_MACRO_CLASSES, e.FULL_IMAGE_BBOX, e.FailureContributionSchema, e.FailureCounters, e.FailureReasonCountSchema, e.FanControlStatusSchema, e.FanDirectionSchema, e.FeatureManifestSchema, e.FeatureProbeStatusSchema, e.FloodStatusSchema, e.Fmp4BoxSplitter, e.FrameHandleFormatSchema, e.FrameHandleSchema, e.FrameInputSchema, e.FrameLazyCountersSchema, e.FrameLazyMetricsSchema, e.G711_SCALE_CORRECTION_DB, e.GasStatusSchema, e.GetLoggingSettingsInputSchema, e.GetStreamWithCodecInputSchema, e.GlobalMetricsSchema, e.GridLayoutPatchSchema, e.GridLayoutViewSchema, 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.INFERENCE_DEVICE_EXCLUSION_REASONS, e.ImageContractSchema, e.ImageContractStateSchema, e.ImageRotateSchema, e.ImageSettingsOptionsSchema, e.ImageSettingsPatchSchema, e.ImageSettingsStatusSchema, e.ImageStatusSchema, e.InferenceDeviceExclusionReasonSchema, e.IngestOwnerSchema, e.InstalledPackageSchema, e.IntegrationLiteSchema, e.IntegrationWithStateSchema, e.IntercomAbilitySchema, e.IntercomStatusSchema, e.KNOWN_CAP_NAMES, e.KeyEventSchema, e.LEGACY_READ_ONLY_CONFIG_KEY, e.LOAD_CONTRIBUTION_ATTRIBUTIONS, e.LOAD_CONTRIBUTION_ROLES, e.LOCATION_DESCRIPTION_MAX, e.LOCATION_ICON_FALLBACK, e.LOCATION_ICON_IDS, e.LOG_CHANNEL_TICK_MS, e.LOG_LEVEL_RANK, e.LTS_SCOPE_CLASS_SEPARATOR, e.LabelAttributionSchema, e.LabelDefinitionSchema, e.LabelTierSchema, e.LawnMowerActivitySchema, e.LawnMowerControlStatusSchema, e.LedgerWalkDeviceReportSchema, e.LedgerWalkInputSchema, e.LedgerWalkRefusalSchema, e.LedgerWalkReportSchema, e.LedgerWalkSkipCountsSchema, e.LedgerWalkSkipReasonSchema, e.LegacyStorageLocationDefaultSchema, 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.LoadContributionSchema, e.LocateSegmentResultSchema, e.LocationDescriptionAssignmentSchema, e.LocationIconAssignmentSchema, e.LocationIconIdSchema, e.LocationStatSchema, e.LockControlStatusSchema, e.LockStateSchema, e.LogChannelApplyResultSchema, e.LogChannelDescriptorSchema, e.LogChannelGate, e.LogChannelLevelSchema, e.LogChannelRegistry, e.LogChannelWindowPatchSchema, e.LogChannelWindowSchema, e.LogChannelWindowStateSchema, e.LogEntrySchema, e.LogLevelSchema, e.LogStreamEntrySchema, e.LoggingEffectiveSchema, e.LoggingExplicitSchema, e.LoggingLevelLayerSchema, e.LoggingLevelSourceSchema, e.LoggingScopeKindSchema, e.LoggingSettingsPatchSchema, e.LoggingSettingsStateSchema, e.LoginMethodContributionSchema, e.LoginStageEnum, e.LtsBucketSchema, e.MACRO_LABELS, e.MAX_ARCHIVED_DEBUG_NOTES, e.MAX_BIRTH_DECISION_RECORDS, e.MAX_BIRTH_LATENCY_PROXY_MS, e.MAX_CLIP_EVENT_IDS, e.MAX_CLIP_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.MAX_KEYS, e.MAX_REASONS_PER_KEY, e.MAX_SENSOR_TRIGGER_DEVICES, e.MAX_TRACK_DEBUG_NOTE_LEN, e.MEDIA_OWNER_TYPES, e.METHOD_ACCESS_MAP, e.METHOD_DEVICE_SELECTORS, e.MODEL_FORMATS, e.MODEL_PROVIDER_IDS, e.MOTION_CLOSE_AFTER_MS, 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.MediaFileKindEnum, e.MediaFileRefSchema, e.MediaFileSchema, e.MediaPlayerRepeatSchema, e.MediaPlayerStateSchema, e.MediaPlayerStatusSchema, e.MediaRelocateModeSchema, e.MeshPeerSchema, e.MeshStatusSchema, e.MethodAccessSchema, e.MigrateDeviceResultSchema, e.MigrateSwitchOutcomeSchema, e.MigrateSwitchReportSchema, e.ModelCatalogEntrySchema, e.ModelConvertInputSchema, e.ModelConvertMetadataSchema, e.ModelDistributeInputSchema, e.ModelDistributeResultSchema, e.ModelExtraFileSchema, e.ModelFormatEntrySchema, e.ModelFormatsSchema, e.ModelProviderIdSchema, 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_SCENE_BUDGET_FIELD, e.NATIVE_LEASE_SCENE_BUDGET_KEY, e.NATIVE_LEASE_SECTION_ID, e.NATIVE_LEASE_TILE_BUDGET_FIELD, e.NATIVE_LEASE_TILE_BUDGET_KEY, e.NAVIGATION_ACTION_CATALOG, e.NAVIGATION_LIGHT_LEVEL_MAX, e.NAVIGATION_LIGHT_LEVEL_MIN, e.NC_ALARM_SYSTEM_EVENT_KINDS, e.NC_AUDIO_CONFIRM_HITS_DEFAULT, e.NC_AUDIO_CONFIRM_HITS_MAX, e.NC_AUDIO_CONFIRM_HITS_MIN, e.NC_AUDIO_CONFIRM_WINDOW_MAX_SEC, e.NC_AUDIO_CONFIRM_WINDOW_MIN_SEC, e.NC_AUDIO_CONFIRM_WINDOW_SEC_DEFAULT, 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_AUDIO_SEED, e.NC_AUTHORABLE_SYSTEM_EVENT_KINDS, e.NC_BASE_CONDITION_KEYS, e.NC_CLIP_RETENTION_MAX_SEC, 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_OCCUPANCY_DEFAULTS, e.NC_RULE_EDITOR_SECTION_ORDER, e.NC_RULE_KIND_SPECS, e.NC_RULE_SECTIONS, e.NC_SNOOZE_MAX_MINUTES, e.NC_SYSTEM_DELIVERY, e.NC_SYSTEM_EVENT_FILTER_KEYS, e.NC_TAXONOMY, e.NETWORK_LINK_TYPES, e.NETWORK_LINK_UNKNOWN, e.NativeCropBboxSchema, e.NativeCropRefSchema, e.NativeCropResultSchema, e.NativeDetectionSchema, e.NativeLeaseAdmissionSchema, e.NativeLeaseSettingsSchema, e.NativeObjectClassEnum, e.NativeObjectDetectionOptionsSchema, e.NativeObjectDetectionRuntimeStateSchema, e.NativeObjectDetectionSettingsPatchSchema, e.NativeObjectDetectionStatusSchema, e.NativeObjectGeometryEnum, e.NavigationActionEntrySchema, e.NavigationActionIdSchema, e.NavigationEntryKindSchema, e.NavigationFeaturesSchema, e.NavigationLightModeSchema, e.NavigationModeSchema, e.NavigationMoveCommandSchema, e.NavigationPointSchema, e.NavigationRuntimeStateSchema, e.NavigationStatusSchema, e.NcAlarmConfigSchema, e.NcAlarmModeCoverageSchema, e.NcAlarmSettingsPatchSchema, e.NcAlarmSettingsSchema, e.NcAlarmSkipReasonSchema, e.NcAlarmSkippedDeviceSchema, e.NcAudioConditionSchema, e.NcClipRetentionAskSchema, e.NcClipRetentionPlanSchema, 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.NetworkLinkStatusSchema, e.NotificationActionIconSchema, e.NotificationActionSchema, e.NotificationFormatSchema, e.NotificationSchema, e.NotifierStatusSchema, e.NumericSensorStatusSchema, e.OPERATOR_WRITTEN_STALE_MS, e.OPS_LOG_DEFAULT_LIMIT, e.OPS_LOG_RING_DEFAULT_MAX, e.OVERFLOW_REASON, e.OVERLAY_LAYERS, e.OauthIntegrationDescriptorSchema, e.ObjectEventSchema, e.OccupancyBurstRefusalSchema, 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_ANALYTICS_CAP_NAME, 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.ParkRefusalSchema, e.ParkTrackFrameResultSchema, e.ParkedFrameKindSchema, e.ParkedTrackFrameSchema, 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.PoolMemoryWatchdog, 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.PtzHomePresetSchema, e.PtzHomeReturnSchema, e.PtzMoveCommandSchema, e.PtzOptionsSchema, e.PtzPositionSchema, e.PtzPresetFunctionSchema, 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_AUDIO_TRIGGER_OFFERED_DBFS, e.RECORDING_EXPORT_MAX_READ_BYTES, e.RECORDING_TIMELINE_BATCH_MAX, e.REDACTED_SECRET, e.RESERVED_BINDING_NAMES, e.RESTORED_CAP_NAMES, e.ROOT_BUCKET_KEY, e.RUNTIME_DEFAULTS, e.RUNTIME_STATE_POLICY, e.RUNTIME_STATE_REFRESH_MISS_COOLDOWN_MS, e.RUNTIME_TO_FORMAT, e.RawStateResultSchema, e.ReadGopBytesResultSchema, e.ReadSegmentBytesResultSchema, e.ReadWindowBytesResultSchema, e.ReadinessRegistry, e.ReadinessTimeoutError, e.RecentTracksPageSchema, e.RecentTracksQueryInput, e.RecordingAvailabilityForDeviceSchema, e.RecordingAvailabilitySchema, e.RecordingBandAudioSchema, e.RecordingBandModeSchema, e.RecordingBandSchema, e.RecordingBandTriggersSchema, e.RecordingConfigSchema, e.RecordingDaysForDeviceSchema, e.RecordingDaysSchema, e.RecordingDeviceUsageSchema, e.RecordingLocationUsageSchema, e.RecordingManifestSchema, e.RecordingObjectTriggerClassSchema, e.RecordingRangeSchema, e.RecordingRebalanceInputSchema, e.RecordingRebalanceMoveSchema, e.RecordingRebalancePlanSchema, e.RecordingRebalanceSkipReasonSchema, e.RecordingRebalanceSkipSchema, e.RecordingRetentionSchema, e.RecordingSignalRuntimeStateSchema, e.RecordingSignalStatusSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RelocatableMediaCountInputSchema, e.RelocatableMediaCountSchema, e.RelocateFootageClassSchema, e.RelocateFootageInputSchema, e.RelocateJobSchema, e.RelocateJobStateSchema, e.RelocateMediaInputSchema, e.RelocateResidueInputSchema, e.RelocateResidueSchema, e.RenderedAsSchema, e.ReportMotionInputSchema, e.ReportedFailureContributionSchema, e.ReportedLoadContributionSchema, e.RequestCensusGroupSchema, e.RequestCensusProcedureSchema, e.RequestCensusSnapshotSchema, e.RequestCensusStatusSchema, 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.SENSOR_FEATURES, e.SENSOR_MAP, e.SHARE_VIEW_KINDS, e.SOURCE_CAPS, e.SOURCE_CAP_ACTIVE_FIELD, e.SOURCE_CAP_CHANGED_AT_FIELD, e.SOURCE_DEVICE_TYPES, e.SOURCE_INFO_METADATA_KEY, e.STATIONARY_OVERLAY_STYLE, e.STORAGE_ACCESS_FALLBACK, e.STORAGE_BYTES_PER_GB, e.STORAGE_LOCATION_MODES, e.STREAM_PROFILE_META, e.STREAM_QUALITY_LABELS, e.SUB_DETECTION_TYPES, e.SUMMARIES_DEFAULT_LIMIT, e.SUMMARIES_MAX_LIMIT, e.SYSTEM_CAP_NAMES, e.SYSTEM_SCOPE_DEVICE_METHODS, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneConfirmSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusForDeviceSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.SceneUnavailableSchema, e.SceneUncoveredPolicySchema, e.SceneVerdictSchema, e.ScopedTokenSchema, e.ScopedTokenSummarySchema, e.ScoredObjectEventSchema, e.ScriptRunnerStatusSchema, e.SearchResultSchema, e.SendEmailInputSchema, e.SendEmailResultSchema, e.SendResultSchema, e.SensorEventSchema, e.ServerBootModeSchema, e.ServerPackageStatusSchema, e.ServerRollbackInfoSchema, e.ServerUpdateActionResultSchema, e.ServerUpdateCheckResultSchema, e.ServerUpdateOutcomeSchema, e.ServerUpdateStateSchema, e.SetLoggingSettingsInputSchema, e.SetSiteLocationInputSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SiteLocationSchema, e.SiteLocationSourceSchema, e.SiteLocationStatusSchema, e.SiteZoneSchema, e.SmokeStatusSchema, e.SmtpStatusSchema, e.SnapshotImageSchema, e.SourceInfoSchema, e.SpatialDetectionSchema, e.SsoBridgeClaimsSchema, e.StartEmbeddedInputSchema, e.StationaryObjectSchema, e.StorageAbortUploadInputSchema, e.StorageAccessSchema, e.StorageBeginDownloadInputSchema, e.StorageBeginDownloadResultSchema, e.StorageBeginUploadInputSchema, e.StorageBeginUploadResultSchema, e.StorageCleanupInputSchema, e.StorageCleanupJobSchema, e.StorageCleanupPhaseSchema, e.StorageCleanupStatusInputSchema, e.StorageDrainProgressSchema, e.StorageEndDownloadInputSchema, e.StorageEvictionPolicySchema, e.StorageFinalizeUploadInputSchema, e.StorageLocationDeclarationSchema, e.StorageLocationModeSchema, e.StorageLocationRefSchema, e.StorageLocationSchema, e.StorageLocationTypeSchema, e.StorageMigrationClassSchema, e.StorageMigrationDestinationsSchema, e.StorageMigrationDrainInputSchema, e.StorageMigrationFindingCodeSchema, e.StorageMigrationFindingSchema, e.StorageMigrationFootageMoveInputSchema, e.StorageMigrationInputSchema, e.StorageMigrationJobSchema, e.StorageMigrationLaneSchema, e.StorageMigrationLeaseInputSchema, e.StorageMigrationMediaMoveInputSchema, e.StorageMigrationModeSchema, e.StorageMigrationMoveProgressSchema, e.StorageMigrationMoveSchema, e.StorageMigrationMoverSchema, e.StorageMigrationParticipantSchema, e.StorageMigrationPhaseSchema, e.StorageMigrationPlanSchema, e.StorageMigrationResidueSchema, e.StorageMigrationSourcesSchema, e.StorageOccupancyReportSchema, 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.StreamSignalSchema, e.StreamSignalsStatusSchema, e.StreamSourceEntrySchema, e.StreamSourceSchema, e.SubscribeAudioChunksInputSchema, e.SubscribeAudioChunksResultSchema, e.SubscribeFramesInputSchema, e.SubscribeFramesResultSchema, e.SummarySchema, 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.TransportPlaneCountsSchema, e.TransportPlaneSchema, e.TurnServerSchema, e.UNATTRIBUTED_BUCKET_KEY, e.UNIT_TABLE, e.UnifiedBrokerInfoSchema, e.UnitConversionError, e.UnstampedEventMediaCountSchema, e.UnstampedRowsSchema, 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.WebrtcLadderDecisionSchema, e.WebrtcSessionDebugSchema, e.WebrtcStreamChoiceSchema, e.WebrtcStreamTargetSchema, e.WebrtcTierFailureSchema, e.WhiteBalanceModeSchema, e.WidgetHostEnum, e.WidgetLoginMethodSchema, e.WidgetMetadataSchema, e.WidgetRemoteSchema, e.WidgetSizeEnum, e.WrapperEvidenceSchema, e.WrapperIdentitySchema, e.WrapperKindSchema, e.YAMNET_TO_MACRO, e.ZoneCrossingDirectionSchema, e.ZoneCrossingSchema, e.ZoneKindEnum, e.ZoneRuleModeEnum, e.ZoneRuleSchema, e.ZoneRuleStageEnum, e.ZoneRulesArraySchema, e.ZoneSchema, e.ZoneScopeBreakdownSchema, e.__resetLogChannelRegistryForTests, 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.audioChunkBytesPerSample, e.audioCodecCapability, e.audioIsFailClosed, e.audioKindId, e.audioLabelChoices, e.audioMetricsCapability, e.audioModeOf, e.audioOrDefaults, e.audioPlanFromEncodeProfile, e.audioScaleEraOf, 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.cameraGridLayoutCapability, e.cameraPipelineConfigCapability, e.cameraStreamsCapability, e.canConvertUnit, e.canonicalEgressPlan, e.carbonMonoxideCapability, e.cellsToRects, e.classifyBearerPrincipal, e.classifyStream, e.classifyStreams, e.climateControlCapability, e.clusterModelSettingKey, e.clusterStepSettingFieldsFor, e.clusterStepSettingKey, e.codecIsAccepted, e.collectHydratedFieldEntries, e.collectHydratedFieldValues, e.collectSecretConfigKeys, e.colorCapability, e.colorForKind, e.commitWatchdogRestart, e.compareToTarget, e.compileExpression, e.compileExpressionSafe, e.composeSwitchedOff, e.conditionDepth, e.conditionExclusionReason, e.conditionVisibleForKind, 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.createEventBusSliceSource, e.createExpressionScope, e.createHwAccelCache, e.createLazyTrpcSource, e.createLogChannelsProvider, e.createMirrorSource, e.createRuntimeStateBridge, e.createSliceHandle, e.createSystemProxy, e.customAction, e.customModelRegistryCapability, e.dataStoreProviderCapability, e.dayNightCapability, e.declarationOwnerNodeId, e.declareLogChannel, e.decodeVectorBase64, e.decoderCapability, e.defaultDeliveryForSection, e.defaultDeviceFor, e.defineCustomActions, e.deriveBatteryPresence, e.deriveCameraSwitches, e.deriveDetailCropRect, e.deriveRecordingMode, e.describeCustomActions, 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.droppedConditionsForKind, 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.evaluatePoolMemory, e.evaluateSensorEdge, e.evaluateZoneRules, e.event, e.eventEmitterCapability, e.eventsCapability, e.evictionPolicyForMode, e.evictionPolicyOfLocation, e.expandAudioChunkToF32le, e.expandCapMethods, e.extractNestedAddonId, e.extractSourceInfoFromMetadata, e.faceGalleryCapability, e.failureContributionCapability, e.failureRate, e.fanControlCapability, e.featureProbeCapability, e.filesystemBrowseCapability, e.findTimezone, e.floodCapability, e.foldSnapshotByFunction, e.formatForBackend, e.formatForRuntime, e.formatMediaOwnerKey, e.formatParkedFor, e.gasCapability, e.gbToBytes, e.generateAutomationBlock, e.getAudioMacroClassIds, e.getByPath, e.getCapsByProviderKind, e.getLogChannelRegistry, e.getTaxonomyEntry, e.hasMotionTrigger, e.hfModelUrl, e.htmlToText, e.humidifierCapability, e.humiditySensorCapability, e.hydrateSchema, e.imageCapability, e.imageSettingsCapability, e.inferModelProvider, e.initialPoolMemoryState, e.integrationsCapability, e.intercomCapability, e.invocationFromEncodeProfile, e.isAgentOnlyPlacement, e.isArrayOutputSchema, e.isAudioChunkFormat, e.isAudioLabelSelected, e.isAudioRule, e.isBaseConditionKey, e.isBatteryPresenceFault, e.isClusterScopedStep, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDetectionMacroClass, e.isDeviceConfigCap, e.isDeviceScopedCap, e.isEvent, e.isEventOwnerType, e.isFirstLevelMacroClass, e.isIsolatedBuiltin, e.isLocationEnabled, e.isMediaOwnerType, e.isNode, e.isObjectInput, e.isOccupancyRule, e.isRestoredCap, e.isSameAddonId, e.isScheduleActive, e.isSecretConfigField, e.isSoftwareDecode, e.isSourceCap, e.isStorageLocationMode, e.isSystemDelivery, e.isVoidInput, e.ituDbfsFromPreEpoch, e.jobKindSchema, e.kebabToCamel, e.knownValues, e.lawnMowerControlCapability, e.legacyModeOf, e.lifecycleJobSchema, e.lifecycleJobScopeSchema, e.lifecycleJobStateSchema, e.lifecycleTaskSchema, e.llmCapability, e.llmRuntimeCapability, e.loadContributionCapability, e.localNetworkCapability, e.locationIconKey, e.locationSimilarity, e.lockControlCapability, e.logBannerArgs, e.logChannelsCapability, e.logDestinationCapability, e.logLevelAtMost, e.loginMethodCapability, e.looseSchema, e.makeProfileBrokerId, e.makeSourceBrokerId, e.mapAudioLabelToMacro, e.markdownToHtmlLite, e.markdownToText, e.maskUrlCredentials, e.mayReadLocation, e.mayWriteToLocation, e.mediaPlayerCapability, e.mergeSourceInfo, e.meshNetworkCapability, e.method, e.methodAccessForHttpMethod, e.metricsProviderCapability, e.migrateLegacyDeviceSignalConfig, e.modeMayRead, e.modeMayWrite, e.modelConvertCapability, e.modelDistributorCapability, e.modelFormatForRuntime, e.motionCapability, e.motionDetectionCapability, e.motionTriggerCapability, e.motionZonesCapability, e.mqttBrokerCapability, e.nativeObjectDetectionCapability, e.navigationCapability, e.networkAccessCapability, e.networkLinkCapability, 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, a = e.occupancyScope, e.osdCapability, e.osdManagerCapability, e.overlayClusterStepSettings, e.parseCameraStreamConfig, e.parseExpression, e.parseJsonArray, e.parseJsonObject, e.parseJsonUnknown, e.parseMediaOwnerKey, e.parseOccupancyScope, e.parseProcStatus, e.parseProfileBrokerId, e.parseRuleSection, e.parseStreamParamsFormPatch, e.patchAudio, e.petFeederCapability, e.pickAccessoryControl, e.pickClusterStepModels, e.pickClusterStepSettings, e.pickDetailCropConvention, e.pickNativeLeaseOverride, e.pickPreferredRtspEntry, e.pickRestartCandidate, e.pickVideoEncoder, e.pickerForCondition, e.pipelineAnalyticsCapability, e.pipelineExecutorCapability, e.pipelineOrchestratorCapability, e.pipelineRunnerCapability, e.plateGalleryCapability, e.platformProbeCapability, e.poolMemoryThreshold, e.powerMeterCapability, e.prepareNotification, e.presenceCapability, e.pressureSensorCapability, e.principalMayReachAddon, e.privacyMaskCapability, e.procedureAuthKey, e.ptzAutotrackCapability, e.ptzCapability, e.pythonScriptForBackend, e.rankStreams, e.readClusterStepModels, e.readClusterStepSettings, e.readDetailCropConvention, e.readDeviceStateFrom, e.readNativeLeaseOverride, e.readNodePin, e.readTimelapseGeneratedAt, e.readinessKey, e.rebootCapability, e.recordingCapability, e.recordingExportCapability, e.recordingSignalCapability, e.rectsToCells, e.reducePoints, e.requiresPython, e.resetPoolBaseline, e.resolveAddonExecution, e.resolveAddonGroup, e.resolveAddonPlacement, e.resolveAddonRuntime, e.resolveBucketMs, e.resolveCapMount, e.resolveClusterStepModelId, e.resolveContainerPrimaryChild, e.resolveDetectionRuntime, e.resolveDeviceControlKind, e.resolveDeviceProfile, e.resolveEgressDecodeHwAccel, e.resolveFormat, e.resolveHydratedFieldValue, e.resolveLocationIcon, e.resolveLocationMode, e.resolveMethodAuth, e.resolveModelFormat, e.resolveMutate, e.resolvePoolMemoryPolicy, e.resolveRecordingProfiles, e.resolveRunnerId, e.resolveStreamMaps, e.resolveVariantModelId, e.resolveViewableDeviceIds, e.roleSpec, e.ruleEditorSectionsForKind, e.ruleKindOf, e.ruleKindSpec, e.ruleMatchesSection, e.ruleSection, e.ruleSectionOf, e.ruleSeedForSection, e.runInferenceStep, e.runtimeDevices, e.runtimeStatePolicyFor, e.sceneMonitorCapability, e.schemaDeclaresAnyField, e.scopeInherits, e.scopeKey, e.scopesAllowAddon, e.scopesAllowDeviceCap, e.scoreRuntimes, e.scriptRunnerCapability, e.selectAssignedProfileSlots, e.serverManagementCapability, e.setByPath, e.settingsStoreCapability, e.signalPercentFromBars, e.signalPercentFromRssi, e.siteZoneKey, e.sleep, e.sleepCancellable, e.sliceActiveValue, e.sliceChangedAt, e.smokeCapability, e.smtpProviderCapability, e.snapshotCapability, e.ssoBridgeCapability, e.startReachabilityPoll, e.stateVocabularyFor, e.storageCapability, e.storageEvictableCapability, e.storageMigrationCapability, e.storageOccupancyCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.streamSignalsCapability, e.stripRetiredBandPreBufferSec, e.strippedOfLegacyReadOnly, e.subKindsOf, e.summarisePrivacyAudio, e.summarizeEffectiveScope, e.supportedRuntimes, e.switchCapability, e.switchedOffIds, e.synthesizeSourceInfo, e.systemCapability, e.systemEventFilterApplies, e.systemEventFilterAppliesToAnyKind, 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.withLocationMode, 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 };
|