@camstack/types 1.1.29 → 1.1.31
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/addon.js +1 -1
- package/dist/addon.mjs +1 -1
- package/dist/capabilities/day-night.cap.d.ts +162 -0
- package/dist/capabilities/decoder.cap.d.ts +5 -0
- package/dist/capabilities/image-settings.cap.d.ts +357 -0
- package/dist/capabilities/index.d.ts +5 -1
- package/dist/capabilities/pipeline-runner.cap.d.ts +2 -0
- package/dist/generated/addon-api.d.ts +274 -0
- package/dist/generated/cap-status-types.d.ts +5 -1
- package/dist/generated/capability-router-map.d.ts +8 -2
- package/dist/generated/device-local-state.d.ts +6 -0
- package/dist/generated/device-proxy.d.ts +6 -0
- package/dist/generated/method-access-map.d.ts +1 -1
- package/dist/index.js +362 -9
- package/dist/index.mjs +350 -10
- package/dist/interfaces/decoder.d.ts +16 -0
- package/dist/interfaces/pipeline-runner-capability.d.ts +3 -1
- package/dist/interfaces/stream-broker.d.ts +5 -0
- package/dist/{sleep-BiDFW0E7.mjs → sleep-CZDdRBua.mjs} +12 -0
- package/dist/{sleep-B8cp-HUn.js → sleep-Dirr8nGw.js} +12 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_sleep = require("./sleep-
|
|
2
|
+
const require_sleep = require("./sleep-Dirr8nGw.js");
|
|
3
3
|
const require_err_msg = require("./err-msg-COpsHMw2.js");
|
|
4
4
|
let zod = require("zod");
|
|
5
5
|
//#region src/health/wiring-health.ts
|
|
@@ -1035,7 +1035,16 @@ var DecoderStatsSchema = zod.z.object({
|
|
|
1035
1035
|
inputFps: zod.z.number(),
|
|
1036
1036
|
outputFps: zod.z.number(),
|
|
1037
1037
|
avgDecodeTimeMs: zod.z.number(),
|
|
1038
|
-
droppedFrames: zod.z.number()
|
|
1038
|
+
droppedFrames: zod.z.number(),
|
|
1039
|
+
/**
|
|
1040
|
+
* Pull-mode adaptive-fps telemetry (optional — only pull sessions run the
|
|
1041
|
+
* lag-driven controller; push sessions omit these). `lagMs` is the EWMA of
|
|
1042
|
+
* the decoder's real-time drift (rising = falling behind live); `adaptiveFps`
|
|
1043
|
+
* is the current lag-throttled emit rate (≤ `effectiveFps` ceiling).
|
|
1044
|
+
*/
|
|
1045
|
+
lagMs: zod.z.number().optional(),
|
|
1046
|
+
effectiveFps: zod.z.number().optional(),
|
|
1047
|
+
adaptiveFps: zod.z.number().optional()
|
|
1039
1048
|
});
|
|
1040
1049
|
var DecoderSessionConfigSchema = zod.z.object({
|
|
1041
1050
|
codec: zod.z.string(),
|
|
@@ -1076,7 +1085,15 @@ var DecoderSessionConfigSchema = zod.z.object({
|
|
|
1076
1085
|
* other — `pullFrames` returns nothing for an `'shm'` session and
|
|
1077
1086
|
* `pullHandles` returns nothing for a `'callback'` session.
|
|
1078
1087
|
*/
|
|
1079
|
-
frameSink: zod.z.enum(["callback", "shm"]).default("callback")
|
|
1088
|
+
frameSink: zod.z.enum(["callback", "shm"]).default("callback"),
|
|
1089
|
+
/**
|
|
1090
|
+
* Per-camera decoder DEBUG facility. When `true`, a pull-mode session emits
|
|
1091
|
+
* a throttled (~1Hz) structured `decoder debug` line (effective/adaptive fps,
|
|
1092
|
+
* real-time lag, dropped-frame delta, avg decode time, hwaccel). Mirrors the
|
|
1093
|
+
* stream-broker's `streamingDebug` gate — off by default so production logs
|
|
1094
|
+
* stay quiet and the emit path pays zero per-frame cost when disabled.
|
|
1095
|
+
*/
|
|
1096
|
+
debug: zod.z.boolean().optional()
|
|
1080
1097
|
});
|
|
1081
1098
|
//#endregion
|
|
1082
1099
|
//#region src/encode-profile.ts
|
|
@@ -1290,7 +1307,7 @@ var RUNTIME_DEFAULTS = {
|
|
|
1290
1307
|
"ffmpeg.binaryPath": "ffmpeg",
|
|
1291
1308
|
"ffmpeg.hwAccel": "auto",
|
|
1292
1309
|
"ffmpeg.threadCount": 0,
|
|
1293
|
-
"auth.tokenExpiry": "
|
|
1310
|
+
"auth.tokenExpiry": "7d"
|
|
1294
1311
|
};
|
|
1295
1312
|
//#endregion
|
|
1296
1313
|
//#region src/cap-call-context.ts
|
|
@@ -5814,6 +5831,102 @@ var coverCapability = {
|
|
|
5814
5831
|
runtimeState: CoverStatusSchema
|
|
5815
5832
|
};
|
|
5816
5833
|
//#endregion
|
|
5834
|
+
//#region src/capabilities/day-night.cap.ts
|
|
5835
|
+
/**
|
|
5836
|
+
* Vendor-neutral day/night (IR-cut) control — the per-camera config cap
|
|
5837
|
+
* shared by reolink / hikvision / amcrest. Models the common firmware
|
|
5838
|
+
* surface: the IR-cut switching MODE plus the two knobs that gate it
|
|
5839
|
+
* (photocell `sensitivity` + `switchDelaySec`). Each vendor maps these
|
|
5840
|
+
* onto its own ISAPI / Baichuan / Dahua-CGI fields; the cap standardises
|
|
5841
|
+
* the shape so ONE derived-form renders every camera.
|
|
5842
|
+
*
|
|
5843
|
+
* Follows the D14 `deviceConfig` archetype (see `stream-params.cap.ts`):
|
|
5844
|
+
* `getOptions` advertises per-camera availability, `getStatus` (auto-
|
|
5845
|
+
* injected from `status`) reports the live values, and a single
|
|
5846
|
+
* `setSettings` mutation applies a partial change. No hand-written
|
|
5847
|
+
* settings-contribution methods — the framework derives the UI + save
|
|
5848
|
+
* routing from this surface.
|
|
5849
|
+
*/
|
|
5850
|
+
/** IR-cut switching mode. `schedule` = time-of-day table configured on the camera. */
|
|
5851
|
+
var DayNightModeSchema = zod.z.enum([
|
|
5852
|
+
"auto",
|
|
5853
|
+
"day",
|
|
5854
|
+
"night",
|
|
5855
|
+
"schedule"
|
|
5856
|
+
]);
|
|
5857
|
+
/** Normalized numeric range descriptor — `{ min, max, step }` per the
|
|
5858
|
+
* getOptions availability convention. Normalized values are 0–100. */
|
|
5859
|
+
var NormalizedRangeSchema$1 = zod.z.object({
|
|
5860
|
+
min: zod.z.number(),
|
|
5861
|
+
max: zod.z.number(),
|
|
5862
|
+
step: zod.z.number()
|
|
5863
|
+
});
|
|
5864
|
+
/**
|
|
5865
|
+
* Current day/night state. Optional fields are absent when the camera
|
|
5866
|
+
* does not expose that knob (a photocell-less model reports no
|
|
5867
|
+
* `sensitivity`). `lastFetchedAt` feeds the runtime-state bridge.
|
|
5868
|
+
*/
|
|
5869
|
+
var DayNightStatusSchema = zod.z.object({
|
|
5870
|
+
mode: DayNightModeSchema,
|
|
5871
|
+
/** IR-cut trigger sensitivity, NORMALIZED 0–100 (higher = switches to night sooner). */
|
|
5872
|
+
sensitivity: zod.z.number().optional(),
|
|
5873
|
+
/** Delay before the IR-cut filter flips, in seconds. */
|
|
5874
|
+
switchDelaySec: zod.z.number().optional(),
|
|
5875
|
+
lastFetchedAt: zod.z.number()
|
|
5876
|
+
});
|
|
5877
|
+
/**
|
|
5878
|
+
* Per-camera availability descriptor — drives which controls the admin UI
|
|
5879
|
+
* renders. Booleans as `supportsX`; numeric ranges as `{ min, max, step }`
|
|
5880
|
+
* (normalized 0–100); the mode choice-set as an array. A provider returns
|
|
5881
|
+
* honest, camera-probed values — never hardcoded.
|
|
5882
|
+
*/
|
|
5883
|
+
var DayNightOptionsSchema = zod.z.object({
|
|
5884
|
+
/** Modes this camera accepts. Empty → the camera has no configurable day/night mode. */
|
|
5885
|
+
modes: zod.z.array(DayNightModeSchema),
|
|
5886
|
+
supportsSensitivity: zod.z.boolean(),
|
|
5887
|
+
/** Present when `supportsSensitivity` — the normalized 0–100 range. */
|
|
5888
|
+
sensitivity: NormalizedRangeSchema$1.optional(),
|
|
5889
|
+
supportsSwitchDelay: zod.z.boolean(),
|
|
5890
|
+
/** Present when `supportsSwitchDelay` — the allowed delay range in seconds. */
|
|
5891
|
+
switchDelaySec: NormalizedRangeSchema$1.optional()
|
|
5892
|
+
});
|
|
5893
|
+
/**
|
|
5894
|
+
* Partial change to the day/night config — every field optional. A
|
|
5895
|
+
* provider ignores fields it does not support.
|
|
5896
|
+
*/
|
|
5897
|
+
var DayNightSettingsPatchSchema = zod.z.object({
|
|
5898
|
+
mode: DayNightModeSchema.optional(),
|
|
5899
|
+
sensitivity: zod.z.number().optional(),
|
|
5900
|
+
switchDelaySec: zod.z.number().optional()
|
|
5901
|
+
});
|
|
5902
|
+
var dayNightCapability = {
|
|
5903
|
+
name: "day-night",
|
|
5904
|
+
scope: "device",
|
|
5905
|
+
deviceNative: true,
|
|
5906
|
+
mode: "singleton",
|
|
5907
|
+
deviceTypes: [require_sleep.DeviceType.Camera],
|
|
5908
|
+
deviceConfig: { ui: {
|
|
5909
|
+
kind: "derived-form",
|
|
5910
|
+
builderId: "day-night",
|
|
5911
|
+
tab: "image"
|
|
5912
|
+
} },
|
|
5913
|
+
methods: {
|
|
5914
|
+
getOptions: require_sleep.method(zod.z.object({ deviceId: zod.z.number() }), DayNightOptionsSchema),
|
|
5915
|
+
setSettings: require_sleep.method(zod.z.object({
|
|
5916
|
+
deviceId: zod.z.number(),
|
|
5917
|
+
settings: DayNightSettingsPatchSchema
|
|
5918
|
+
}), zod.z.void(), {
|
|
5919
|
+
kind: "mutation",
|
|
5920
|
+
auth: "admin"
|
|
5921
|
+
})
|
|
5922
|
+
},
|
|
5923
|
+
status: {
|
|
5924
|
+
schema: DayNightStatusSchema,
|
|
5925
|
+
kind: "poll"
|
|
5926
|
+
},
|
|
5927
|
+
runtimeState: DayNightStatusSchema
|
|
5928
|
+
};
|
|
5929
|
+
//#endregion
|
|
5817
5930
|
//#region src/device/source-info.ts
|
|
5818
5931
|
/**
|
|
5819
5932
|
* Identity envelope for a device's upstream-system metadata.
|
|
@@ -6539,6 +6652,157 @@ var imageCapability = {
|
|
|
6539
6652
|
runtimeState: ImageStatusSchema
|
|
6540
6653
|
};
|
|
6541
6654
|
//#endregion
|
|
6655
|
+
//#region src/capabilities/image-settings.cap.ts
|
|
6656
|
+
/**
|
|
6657
|
+
* Vendor-neutral image / picture-adjustment cap — the per-camera config
|
|
6658
|
+
* cap shared by reolink / hikvision / amcrest. Models the common ISP
|
|
6659
|
+
* surface: the four picture sliders (brightness / contrast / saturation /
|
|
6660
|
+
* sharpness), orientation (mirror / flip / rotate), white-balance,
|
|
6661
|
+
* exposure and backlight-compensation modes.
|
|
6662
|
+
*
|
|
6663
|
+
* NORMALIZATION: every slider is a normalized int 0–100. Vendors expose
|
|
6664
|
+
* these natively as 0–100 or 0–255 (or other ranges); each provider maps
|
|
6665
|
+
* its native range to/from this normalized 0–100 space so the cap surface
|
|
6666
|
+
* (and the derived form) is identical across cameras. `warmth` (manual
|
|
6667
|
+
* white-balance) is likewise normalized 0–100.
|
|
6668
|
+
*
|
|
6669
|
+
* Follows the D14 `deviceConfig` archetype (see `stream-params.cap.ts`):
|
|
6670
|
+
* `getOptions` advertises per-camera availability, `getStatus` (auto-
|
|
6671
|
+
* injected from `status`) reports the live values, and a single
|
|
6672
|
+
* `setSettings` mutation applies a partial change. No hand-written
|
|
6673
|
+
* settings-contribution methods — the framework derives the UI + save
|
|
6674
|
+
* routing from this surface.
|
|
6675
|
+
*/
|
|
6676
|
+
/** Sensor/image rotation, degrees clockwise. */
|
|
6677
|
+
var ImageRotateSchema = zod.z.enum([
|
|
6678
|
+
"0",
|
|
6679
|
+
"90",
|
|
6680
|
+
"180",
|
|
6681
|
+
"270"
|
|
6682
|
+
]);
|
|
6683
|
+
/** White-balance mode. `manual` unlocks the normalized `warmth` knob. */
|
|
6684
|
+
var WhiteBalanceModeSchema = zod.z.enum(["auto", "manual"]);
|
|
6685
|
+
/** Exposure mode. */
|
|
6686
|
+
var ExposureModeSchema = zod.z.enum(["auto", "manual"]);
|
|
6687
|
+
/**
|
|
6688
|
+
* Backlight-compensation mode:
|
|
6689
|
+
* - `off` — disabled
|
|
6690
|
+
* - `blc` — backlight compensation
|
|
6691
|
+
* - `wdr` — wide dynamic range
|
|
6692
|
+
* - `hlc` — highlight compensation
|
|
6693
|
+
*/
|
|
6694
|
+
var BacklightModeSchema = zod.z.enum([
|
|
6695
|
+
"off",
|
|
6696
|
+
"blc",
|
|
6697
|
+
"wdr",
|
|
6698
|
+
"hlc"
|
|
6699
|
+
]);
|
|
6700
|
+
/** Normalized numeric range descriptor — `{ min, max, step }` per the
|
|
6701
|
+
* getOptions availability convention. Slider values are normalized 0–100. */
|
|
6702
|
+
var NormalizedRangeSchema = zod.z.object({
|
|
6703
|
+
min: zod.z.number(),
|
|
6704
|
+
max: zod.z.number(),
|
|
6705
|
+
step: zod.z.number()
|
|
6706
|
+
});
|
|
6707
|
+
/**
|
|
6708
|
+
* Current image-adjustment state. Every field optional — absent when the
|
|
6709
|
+
* camera does not expose that control. Slider values are NORMALIZED 0–100.
|
|
6710
|
+
* `lastFetchedAt` feeds the runtime-state bridge.
|
|
6711
|
+
*/
|
|
6712
|
+
var ImageSettingsStatusSchema = zod.z.object({
|
|
6713
|
+
/** Normalized 0–100. */
|
|
6714
|
+
brightness: zod.z.number().optional(),
|
|
6715
|
+
/** Normalized 0–100. */
|
|
6716
|
+
contrast: zod.z.number().optional(),
|
|
6717
|
+
/** Normalized 0–100. */
|
|
6718
|
+
saturation: zod.z.number().optional(),
|
|
6719
|
+
/** Normalized 0–100. */
|
|
6720
|
+
sharpness: zod.z.number().optional(),
|
|
6721
|
+
mirror: zod.z.boolean().optional(),
|
|
6722
|
+
flip: zod.z.boolean().optional(),
|
|
6723
|
+
rotate: ImageRotateSchema.optional(),
|
|
6724
|
+
whiteBalance: WhiteBalanceModeSchema.optional(),
|
|
6725
|
+
/** Manual white-balance warmth, NORMALIZED 0–100. Meaningful only when `whiteBalance === 'manual'`. */
|
|
6726
|
+
warmth: zod.z.number().optional(),
|
|
6727
|
+
exposureMode: ExposureModeSchema.optional(),
|
|
6728
|
+
backlightMode: BacklightModeSchema.optional(),
|
|
6729
|
+
lastFetchedAt: zod.z.number()
|
|
6730
|
+
});
|
|
6731
|
+
/**
|
|
6732
|
+
* Per-camera availability descriptor — drives which controls the admin UI
|
|
6733
|
+
* renders. Booleans as `supportsX`; numeric ranges as `{ min, max, step }`
|
|
6734
|
+
* (the normalized 0–100 range); enums as arrays of supported values (empty
|
|
6735
|
+
* array → control hidden). A provider returns honest, camera-probed values
|
|
6736
|
+
* — never hardcoded.
|
|
6737
|
+
*/
|
|
6738
|
+
var ImageSettingsOptionsSchema = zod.z.object({
|
|
6739
|
+
supportsBrightness: zod.z.boolean(),
|
|
6740
|
+
brightness: NormalizedRangeSchema.optional(),
|
|
6741
|
+
supportsContrast: zod.z.boolean(),
|
|
6742
|
+
contrast: NormalizedRangeSchema.optional(),
|
|
6743
|
+
supportsSaturation: zod.z.boolean(),
|
|
6744
|
+
saturation: NormalizedRangeSchema.optional(),
|
|
6745
|
+
supportsSharpness: zod.z.boolean(),
|
|
6746
|
+
sharpness: NormalizedRangeSchema.optional(),
|
|
6747
|
+
supportsMirror: zod.z.boolean(),
|
|
6748
|
+
supportsFlip: zod.z.boolean(),
|
|
6749
|
+
/** Supported rotation values. Empty → rotation not configurable. */
|
|
6750
|
+
rotateOptions: zod.z.array(ImageRotateSchema),
|
|
6751
|
+
/** Supported white-balance modes. Empty → white-balance not configurable. */
|
|
6752
|
+
whiteBalanceModes: zod.z.array(WhiteBalanceModeSchema),
|
|
6753
|
+
supportsWarmth: zod.z.boolean(),
|
|
6754
|
+
/** Present when `supportsWarmth` — the normalized 0–100 range. */
|
|
6755
|
+
warmth: NormalizedRangeSchema.optional(),
|
|
6756
|
+
/** Supported exposure modes. Empty → exposure not configurable. */
|
|
6757
|
+
exposureModes: zod.z.array(ExposureModeSchema),
|
|
6758
|
+
/** Supported backlight modes. Empty → backlight-compensation not configurable. */
|
|
6759
|
+
backlightModes: zod.z.array(BacklightModeSchema)
|
|
6760
|
+
});
|
|
6761
|
+
/**
|
|
6762
|
+
* Partial change to the image config — every field optional. Slider values
|
|
6763
|
+
* are normalized 0–100. A provider ignores fields it does not support.
|
|
6764
|
+
*/
|
|
6765
|
+
var ImageSettingsPatchSchema = zod.z.object({
|
|
6766
|
+
brightness: zod.z.number().optional(),
|
|
6767
|
+
contrast: zod.z.number().optional(),
|
|
6768
|
+
saturation: zod.z.number().optional(),
|
|
6769
|
+
sharpness: zod.z.number().optional(),
|
|
6770
|
+
mirror: zod.z.boolean().optional(),
|
|
6771
|
+
flip: zod.z.boolean().optional(),
|
|
6772
|
+
rotate: ImageRotateSchema.optional(),
|
|
6773
|
+
whiteBalance: WhiteBalanceModeSchema.optional(),
|
|
6774
|
+
warmth: zod.z.number().optional(),
|
|
6775
|
+
exposureMode: ExposureModeSchema.optional(),
|
|
6776
|
+
backlightMode: BacklightModeSchema.optional()
|
|
6777
|
+
});
|
|
6778
|
+
var imageSettingsCapability = {
|
|
6779
|
+
name: "image-settings",
|
|
6780
|
+
scope: "device",
|
|
6781
|
+
deviceNative: true,
|
|
6782
|
+
mode: "singleton",
|
|
6783
|
+
deviceTypes: [require_sleep.DeviceType.Camera],
|
|
6784
|
+
deviceConfig: { ui: {
|
|
6785
|
+
kind: "derived-form",
|
|
6786
|
+
builderId: "image-settings",
|
|
6787
|
+
tab: "image"
|
|
6788
|
+
} },
|
|
6789
|
+
methods: {
|
|
6790
|
+
getOptions: require_sleep.method(zod.z.object({ deviceId: zod.z.number() }), ImageSettingsOptionsSchema),
|
|
6791
|
+
setSettings: require_sleep.method(zod.z.object({
|
|
6792
|
+
deviceId: zod.z.number(),
|
|
6793
|
+
settings: ImageSettingsPatchSchema
|
|
6794
|
+
}), zod.z.void(), {
|
|
6795
|
+
kind: "mutation",
|
|
6796
|
+
auth: "admin"
|
|
6797
|
+
})
|
|
6798
|
+
},
|
|
6799
|
+
status: {
|
|
6800
|
+
schema: ImageSettingsStatusSchema,
|
|
6801
|
+
kind: "poll"
|
|
6802
|
+
},
|
|
6803
|
+
runtimeState: ImageSettingsStatusSchema
|
|
6804
|
+
};
|
|
6805
|
+
//#endregion
|
|
6542
6806
|
//#region src/capabilities/lawn-mower-control.cap.ts
|
|
6543
6807
|
/**
|
|
6544
6808
|
* Robotic lawn-mower cap. Models HA `lawn_mower.*` entities — anything
|
|
@@ -7726,6 +7990,16 @@ var RunnerCameraConfigSchema = zod.z.object({
|
|
|
7726
7990
|
* this gate is bypassed.
|
|
7727
7991
|
*/
|
|
7728
7992
|
onboardMotionDrivesAnalyzer: zod.z.boolean().default(true),
|
|
7993
|
+
/**
|
|
7994
|
+
* Master toggle for the occupancy re-check. When `false` (DEFAULT) the runner
|
|
7995
|
+
* never arms the periodic recheck timer, regardless of `occupancyRecheckSec` —
|
|
7996
|
+
* this is off by default because the recheck re-subscribes a detection session
|
|
7997
|
+
* every N seconds while `watching`, a major source of pull-decoder re-dial
|
|
7998
|
+
* churn (each cycle creates+tears a session → RTSP re-dial → latency). The
|
|
7999
|
+
* `occupancyRecheckSec` / `occupancyRecheckFrames` sliders only take effect
|
|
8000
|
+
* (and only render) when this is enabled.
|
|
8001
|
+
*/
|
|
8002
|
+
occupancyRecheckEnabled: zod.z.boolean().default(false),
|
|
7729
8003
|
occupancyRecheckSec: zod.z.number().min(occupancyRecheckSecField.min).max(occupancyRecheckSecField.max).default(occupancyRecheckSecField.default),
|
|
7730
8004
|
occupancyRecheckFrames: zod.z.number().min(occupancyRecheckFramesField.min).max(occupancyRecheckFramesField.max).default(occupancyRecheckFramesField.default),
|
|
7731
8005
|
/**
|
|
@@ -7776,6 +8050,8 @@ var RunnerCameraDeviceUIFields = [
|
|
|
7776
8050
|
default: motionFpsField.default,
|
|
7777
8051
|
showValue: true,
|
|
7778
8052
|
unit: "fps",
|
|
8053
|
+
nullable: true,
|
|
8054
|
+
nullLabel: "Default",
|
|
7779
8055
|
showWhen: {
|
|
7780
8056
|
field: "motionSources",
|
|
7781
8057
|
includes: "analyzer"
|
|
@@ -7790,7 +8066,9 @@ var RunnerCameraDeviceUIFields = [
|
|
|
7790
8066
|
step: detectionFpsField.step,
|
|
7791
8067
|
default: detectionFpsField.default,
|
|
7792
8068
|
showValue: true,
|
|
7793
|
-
unit: "fps"
|
|
8069
|
+
unit: "fps",
|
|
8070
|
+
nullable: true,
|
|
8071
|
+
nullLabel: "Default"
|
|
7794
8072
|
},
|
|
7795
8073
|
{
|
|
7796
8074
|
key: "motionCooldownMs",
|
|
@@ -7803,7 +8081,9 @@ var RunnerCameraDeviceUIFields = [
|
|
|
7803
8081
|
default: motionCooldownMsField.default,
|
|
7804
8082
|
showValue: true,
|
|
7805
8083
|
unit: "s",
|
|
7806
|
-
displayScale: 1e3
|
|
8084
|
+
displayScale: 1e3,
|
|
8085
|
+
nullable: true,
|
|
8086
|
+
nullLabel: "Default"
|
|
7807
8087
|
},
|
|
7808
8088
|
{
|
|
7809
8089
|
key: "onboardMotionDrivesAnalyzer",
|
|
@@ -7816,17 +8096,29 @@ var RunnerCameraDeviceUIFields = [
|
|
|
7816
8096
|
includes: "onboard"
|
|
7817
8097
|
}
|
|
7818
8098
|
},
|
|
8099
|
+
{
|
|
8100
|
+
key: "occupancyRecheckEnabled",
|
|
8101
|
+
type: "boolean",
|
|
8102
|
+
style: "checkbox",
|
|
8103
|
+
label: "Occupancy re-check",
|
|
8104
|
+
description: "Periodically re-sample a few frames during the watching phase to confirm the scene is truly empty (catches stationary objects motion-gating would miss). Off by default — it adds decoder re-dial churn.",
|
|
8105
|
+
default: false
|
|
8106
|
+
},
|
|
7819
8107
|
{
|
|
7820
8108
|
key: "occupancyRecheckSec",
|
|
7821
8109
|
type: "slider",
|
|
7822
8110
|
label: "Occupancy re-check interval",
|
|
7823
|
-
description: "How often (in seconds) the runner re-samples a few frames to confirm the scene is truly empty during the watching phase.
|
|
8111
|
+
description: "How often (in seconds) the runner re-samples a few frames to confirm the scene is truly empty during the watching phase.",
|
|
7824
8112
|
min: occupancyRecheckSecField.min,
|
|
7825
8113
|
max: occupancyRecheckSecField.max,
|
|
7826
8114
|
step: occupancyRecheckSecField.step,
|
|
7827
8115
|
default: occupancyRecheckSecField.default,
|
|
7828
8116
|
showValue: true,
|
|
7829
|
-
unit: "s"
|
|
8117
|
+
unit: "s",
|
|
8118
|
+
showWhen: {
|
|
8119
|
+
field: "occupancyRecheckEnabled",
|
|
8120
|
+
equals: true
|
|
8121
|
+
}
|
|
7830
8122
|
},
|
|
7831
8123
|
{
|
|
7832
8124
|
key: "occupancyRecheckFrames",
|
|
@@ -7837,7 +8129,11 @@ var RunnerCameraDeviceUIFields = [
|
|
|
7837
8129
|
max: occupancyRecheckFramesField.max,
|
|
7838
8130
|
step: occupancyRecheckFramesField.step,
|
|
7839
8131
|
default: occupancyRecheckFramesField.default,
|
|
7840
|
-
showValue: true
|
|
8132
|
+
showValue: true,
|
|
8133
|
+
showWhen: {
|
|
8134
|
+
field: "occupancyRecheckEnabled",
|
|
8135
|
+
equals: true
|
|
8136
|
+
}
|
|
7841
8137
|
}
|
|
7842
8138
|
];
|
|
7843
8139
|
/**
|
|
@@ -10088,6 +10384,7 @@ var DEVICE_LOCAL_STATE_CAPS = {
|
|
|
10088
10384
|
contact: contactCapability,
|
|
10089
10385
|
control: controlCapability,
|
|
10090
10386
|
cover: coverCapability,
|
|
10387
|
+
dayNight: dayNightCapability,
|
|
10091
10388
|
deviceDiscovery: deviceDiscoveryCapability,
|
|
10092
10389
|
deviceStatus: deviceStatusCapability,
|
|
10093
10390
|
doorbell: doorbellCapability,
|
|
@@ -10100,6 +10397,7 @@ var DEVICE_LOCAL_STATE_CAPS = {
|
|
|
10100
10397
|
humidifier: humidifierCapability,
|
|
10101
10398
|
humiditySensor: humiditySensorCapability,
|
|
10102
10399
|
image: imageCapability,
|
|
10400
|
+
imageSettings: imageSettingsCapability,
|
|
10103
10401
|
lawnMowerControl: lawnMowerControlCapability,
|
|
10104
10402
|
lockControl: lockControlCapability,
|
|
10105
10403
|
mediaPlayer: mediaPlayerCapability,
|
|
@@ -22007,6 +22305,7 @@ var CAPABILITY_NAMES = {
|
|
|
22007
22305
|
control: "control",
|
|
22008
22306
|
cover: "cover",
|
|
22009
22307
|
customModelRegistry: "custom-model-registry",
|
|
22308
|
+
dayNight: "day-night",
|
|
22010
22309
|
decoder: "decoder",
|
|
22011
22310
|
detectionPipeline: "detection-pipeline",
|
|
22012
22311
|
deviceAdoption: "device-adoption",
|
|
@@ -22031,6 +22330,7 @@ var CAPABILITY_NAMES = {
|
|
|
22031
22330
|
humidifier: "humidifier",
|
|
22032
22331
|
humiditySensor: "humidity-sensor",
|
|
22033
22332
|
image: "image",
|
|
22333
|
+
imageSettings: "image-settings",
|
|
22034
22334
|
integrations: "integrations",
|
|
22035
22335
|
intercom: "intercom",
|
|
22036
22336
|
lawnMowerControl: "lawn-mower-control",
|
|
@@ -22261,6 +22561,10 @@ var CAPABILITY_ROUTER_KEYS = [
|
|
|
22261
22561
|
key: "customModelRegistry",
|
|
22262
22562
|
name: "custom-model-registry"
|
|
22263
22563
|
},
|
|
22564
|
+
{
|
|
22565
|
+
key: "dayNight",
|
|
22566
|
+
name: "day-night"
|
|
22567
|
+
},
|
|
22264
22568
|
{
|
|
22265
22569
|
key: "decoder",
|
|
22266
22570
|
name: "decoder"
|
|
@@ -22357,6 +22661,10 @@ var CAPABILITY_ROUTER_KEYS = [
|
|
|
22357
22661
|
key: "image",
|
|
22358
22662
|
name: "image"
|
|
22359
22663
|
},
|
|
22664
|
+
{
|
|
22665
|
+
key: "imageSettings",
|
|
22666
|
+
name: "image-settings"
|
|
22667
|
+
},
|
|
22360
22668
|
{
|
|
22361
22669
|
key: "integrations",
|
|
22362
22670
|
name: "integrations"
|
|
@@ -22706,6 +23014,7 @@ var ALL_CAPABILITY_DEFINITIONS = [
|
|
|
22706
23014
|
controlCapability,
|
|
22707
23015
|
coverCapability,
|
|
22708
23016
|
customModelRegistryCapability,
|
|
23017
|
+
dayNightCapability,
|
|
22709
23018
|
decoderCapability,
|
|
22710
23019
|
detectionPipelineCapability,
|
|
22711
23020
|
deviceAdoptionCapability,
|
|
@@ -22730,6 +23039,7 @@ var ALL_CAPABILITY_DEFINITIONS = [
|
|
|
22730
23039
|
humidifierCapability,
|
|
22731
23040
|
humiditySensorCapability,
|
|
22732
23041
|
imageCapability,
|
|
23042
|
+
imageSettingsCapability,
|
|
22733
23043
|
integrationsCapability,
|
|
22734
23044
|
intercomCapability,
|
|
22735
23045
|
lawnMowerControlCapability,
|
|
@@ -22832,6 +23142,7 @@ var CAP_NAMES_WITH_STATUS = [
|
|
|
22832
23142
|
"contact",
|
|
22833
23143
|
"control",
|
|
22834
23144
|
"cover",
|
|
23145
|
+
"day-night",
|
|
22835
23146
|
"device-adoption",
|
|
22836
23147
|
"device-discovery",
|
|
22837
23148
|
"device-export",
|
|
@@ -22846,6 +23157,7 @@ var CAP_NAMES_WITH_STATUS = [
|
|
|
22846
23157
|
"humidifier",
|
|
22847
23158
|
"humidity-sensor",
|
|
22848
23159
|
"image",
|
|
23160
|
+
"image-settings",
|
|
22849
23161
|
"intercom",
|
|
22850
23162
|
"lawn-mower-control",
|
|
22851
23163
|
"lock-control",
|
|
@@ -23723,6 +24035,18 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
23723
24035
|
addonId: null,
|
|
23724
24036
|
access: "view"
|
|
23725
24037
|
},
|
|
24038
|
+
"dayNight.getOptions": {
|
|
24039
|
+
capName: "day-night",
|
|
24040
|
+
capScope: "device",
|
|
24041
|
+
addonId: null,
|
|
24042
|
+
access: "view"
|
|
24043
|
+
},
|
|
24044
|
+
"dayNight.setSettings": {
|
|
24045
|
+
capName: "day-night",
|
|
24046
|
+
capScope: "device",
|
|
24047
|
+
addonId: null,
|
|
24048
|
+
access: "create"
|
|
24049
|
+
},
|
|
23726
24050
|
"decoder.createSession": {
|
|
23727
24051
|
capName: "decoder",
|
|
23728
24052
|
capScope: "system",
|
|
@@ -24653,6 +24977,18 @@ var METHOD_ACCESS_MAP = Object.freeze({
|
|
|
24653
24977
|
addonId: null,
|
|
24654
24978
|
access: "create"
|
|
24655
24979
|
},
|
|
24980
|
+
"imageSettings.getOptions": {
|
|
24981
|
+
capName: "image-settings",
|
|
24982
|
+
capScope: "device",
|
|
24983
|
+
addonId: null,
|
|
24984
|
+
access: "view"
|
|
24985
|
+
},
|
|
24986
|
+
"imageSettings.setSettings": {
|
|
24987
|
+
capName: "image-settings",
|
|
24988
|
+
capScope: "device",
|
|
24989
|
+
addonId: null,
|
|
24990
|
+
access: "create"
|
|
24991
|
+
},
|
|
24656
24992
|
"integrations.create": {
|
|
24657
24993
|
capName: "integrations",
|
|
24658
24994
|
capScope: "system",
|
|
@@ -27327,6 +27663,7 @@ var KNOWN_CAP_NAMES = [
|
|
|
27327
27663
|
"control",
|
|
27328
27664
|
"cover",
|
|
27329
27665
|
"custom-model-registry",
|
|
27666
|
+
"day-night",
|
|
27330
27667
|
"decoder",
|
|
27331
27668
|
"device-adoption",
|
|
27332
27669
|
"device-discovery",
|
|
@@ -27341,6 +27678,7 @@ var KNOWN_CAP_NAMES = [
|
|
|
27341
27678
|
"fan-control",
|
|
27342
27679
|
"filesystem-browse",
|
|
27343
27680
|
"humidifier",
|
|
27681
|
+
"image-settings",
|
|
27344
27682
|
"integrations",
|
|
27345
27683
|
"intercom",
|
|
27346
27684
|
"lawn-mower-control",
|
|
@@ -27425,11 +27763,13 @@ var DEVICE_CAP_NAMES = [
|
|
|
27425
27763
|
"consumables",
|
|
27426
27764
|
"control",
|
|
27427
27765
|
"cover",
|
|
27766
|
+
"day-night",
|
|
27428
27767
|
"device-discovery",
|
|
27429
27768
|
"device-ops",
|
|
27430
27769
|
"events",
|
|
27431
27770
|
"fan-control",
|
|
27432
27771
|
"humidifier",
|
|
27772
|
+
"image-settings",
|
|
27433
27773
|
"intercom",
|
|
27434
27774
|
"lawn-mower-control",
|
|
27435
27775
|
"lock-control",
|
|
@@ -28139,6 +28479,7 @@ exports.AutomationControlStatusSchema = AutomationControlStatusSchema;
|
|
|
28139
28479
|
exports.AvailableIntegrationTypeSchema = AvailableIntegrationTypeSchema;
|
|
28140
28480
|
exports.BACKEND_TO_FORMAT = BACKEND_TO_FORMAT;
|
|
28141
28481
|
exports.BATTERY_DEVICE_PROFILE = BATTERY_DEVICE_PROFILE;
|
|
28482
|
+
exports.BacklightModeSchema = BacklightModeSchema;
|
|
28142
28483
|
exports.BackupDestinationInfoSchema = BackupDestinationInfoSchema;
|
|
28143
28484
|
exports.BackupEntrySchema = BackupEntrySchema;
|
|
28144
28485
|
exports.BaseAddon = require_sleep.BaseAddon;
|
|
@@ -28249,6 +28590,10 @@ exports.DEVICE_PROFILES = DEVICE_PROFILES;
|
|
|
28249
28590
|
exports.DEVICE_SETTINGS_CONTRIBUTION_METHODS = require_sleep.DEVICE_SETTINGS_CONTRIBUTION_METHODS;
|
|
28250
28591
|
exports.DEVICE_STATUS_METHOD = require_sleep.DEVICE_STATUS_METHOD;
|
|
28251
28592
|
exports.DEVICE_TYPE_INFO = DEVICE_TYPE_INFO;
|
|
28593
|
+
exports.DayNightModeSchema = DayNightModeSchema;
|
|
28594
|
+
exports.DayNightOptionsSchema = DayNightOptionsSchema;
|
|
28595
|
+
exports.DayNightSettingsPatchSchema = DayNightSettingsPatchSchema;
|
|
28596
|
+
exports.DayNightStatusSchema = DayNightStatusSchema;
|
|
28252
28597
|
exports.DecodedAudioChunkSchema = require_sleep.DecodedAudioChunkSchema;
|
|
28253
28598
|
exports.DecodedFrameSchema = require_sleep.DecodedFrameSchema;
|
|
28254
28599
|
exports.DecoderAssignmentSchema = DecoderAssignmentSchema;
|
|
@@ -28301,6 +28646,7 @@ exports.ExportSetupFieldSchema = ExportSetupFieldSchema;
|
|
|
28301
28646
|
exports.ExportSetupSchema = ExportSetupSchema;
|
|
28302
28647
|
exports.ExposedDeviceSchema = ExposedDeviceSchema;
|
|
28303
28648
|
exports.ExposedResourceSchema = ExposedResourceSchema;
|
|
28649
|
+
exports.ExposureModeSchema = ExposureModeSchema;
|
|
28304
28650
|
exports.ExpressionEvalError = ExpressionEvalError;
|
|
28305
28651
|
exports.ExpressionParseError = ExpressionParseError;
|
|
28306
28652
|
exports.FanControlStatusSchema = FanControlStatusSchema;
|
|
@@ -28323,6 +28669,10 @@ exports.HistoryResolutionEnum = HistoryResolutionEnum;
|
|
|
28323
28669
|
exports.HumidifierStatusSchema = HumidifierStatusSchema;
|
|
28324
28670
|
exports.HumiditySensorStatusSchema = HumiditySensorStatusSchema;
|
|
28325
28671
|
exports.HvacModeSchema = HvacModeSchema;
|
|
28672
|
+
exports.ImageRotateSchema = ImageRotateSchema;
|
|
28673
|
+
exports.ImageSettingsOptionsSchema = ImageSettingsOptionsSchema;
|
|
28674
|
+
exports.ImageSettingsPatchSchema = ImageSettingsPatchSchema;
|
|
28675
|
+
exports.ImageSettingsStatusSchema = ImageSettingsStatusSchema;
|
|
28326
28676
|
exports.ImageStatusSchema = ImageStatusSchema;
|
|
28327
28677
|
exports.InstalledPackageSchema = InstalledPackageSchema;
|
|
28328
28678
|
exports.IntegrationLiteSchema = IntegrationLiteSchema;
|
|
@@ -28588,6 +28938,7 @@ exports.WaterHeaterStatusSchema = WaterHeaterStatusSchema;
|
|
|
28588
28938
|
exports.WeatherStatusSchema = WeatherStatusSchema;
|
|
28589
28939
|
exports.WebrtcStreamChoiceSchema = WebrtcStreamChoiceSchema;
|
|
28590
28940
|
exports.WebrtcStreamTargetSchema = WebrtcStreamTargetSchema;
|
|
28941
|
+
exports.WhiteBalanceModeSchema = WhiteBalanceModeSchema;
|
|
28591
28942
|
exports.WidgetHostEnum = WidgetHostEnum;
|
|
28592
28943
|
exports.WidgetMetadataSchema = WidgetMetadataSchema;
|
|
28593
28944
|
exports.WidgetRemoteSchema = WidgetRemoteSchema;
|
|
@@ -28668,6 +29019,7 @@ exports.createSliceHandle = require_sleep.createSliceHandle;
|
|
|
28668
29019
|
exports.createSystemProxy = createSystemProxy;
|
|
28669
29020
|
exports.customAction = customAction;
|
|
28670
29021
|
exports.customModelRegistryCapability = customModelRegistryCapability;
|
|
29022
|
+
exports.dayNightCapability = dayNightCapability;
|
|
28671
29023
|
exports.decoderCapability = decoderCapability;
|
|
28672
29024
|
exports.defaultDeviceFor = defaultDeviceFor;
|
|
28673
29025
|
exports.defineCustomActions = defineCustomActions;
|
|
@@ -28719,6 +29071,7 @@ exports.humidifierCapability = humidifierCapability;
|
|
|
28719
29071
|
exports.humiditySensorCapability = humiditySensorCapability;
|
|
28720
29072
|
exports.hydrateSchema = require_sleep.hydrateSchema;
|
|
28721
29073
|
exports.imageCapability = imageCapability;
|
|
29074
|
+
exports.imageSettingsCapability = imageSettingsCapability;
|
|
28722
29075
|
exports.integrationsCapability = integrationsCapability;
|
|
28723
29076
|
exports.intercomCapability = intercomCapability;
|
|
28724
29077
|
exports.isAgentOnlyPlacement = isAgentOnlyPlacement;
|