@camstack/types 1.1.29 → 1.1.30

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/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- const require_sleep = require("./sleep-B8cp-HUn.js");
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
@@ -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. 0 = disabled.",
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;