@camstack/addon-provider-dreame 0.2.22 → 0.2.23

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 CHANGED
@@ -76799,9 +76799,21 @@ var RecordingLocationUsageSchema = object({
76799
76799
  * previously rendered as two identical "disks" with a nonsensical used
76800
76800
  * split — hydrate attribution across aliases is arbitrary by nature. */
76801
76801
  locationIds: array(string()).optional(),
76802
- /** Bytes of recordings stored on this PHYSICAL volume (all aliases). */
76802
+ /**
76803
+ * Filesystem root of the physical volume this row accounts — the only
76804
+ * operator-legible identity when a location has no `displayName` yet, and
76805
+ * what a "which disk is full" alert has to name. OPTIONAL for the same
76806
+ * train-skew reason as `oldestMs`: a recorder that predates the field omits
76807
+ * it, and this schema must keep validating that older provider's payload.
76808
+ */
76809
+ root: string().optional(),
76810
+ /** Bytes of recordings stored on this PHYSICAL volume (all aliases). This is
76811
+ * the footage's SHARE of the volume, not how full the volume is — the disk
76812
+ * also holds everything that is not recordings. Volume fill is
76813
+ * `(totalBytes - availableBytes) / totalBytes`. */
76803
76814
  usedBytes: number(),
76804
- /** Free bytes on the location's volume; null when capacity is unknown (remote). */
76815
+ /** Free bytes on the location's volume; null when capacity is unknown
76816
+ * (remote/unstattable — the recorder logs the statfs failure with the root). */
76805
76817
  availableBytes: number().nullable(),
76806
76818
  /** Total bytes of the location's volume; null when unknown. */
76807
76819
  totalBytes: number().nullable()
@@ -76813,7 +76825,15 @@ var RecordingStorageUsageSchema = object({
76813
76825
  nodeId: string(),
76814
76826
  totalUsedBytes: number(),
76815
76827
  devices: array(RecordingDeviceUsageSchema),
76816
- locations: array(RecordingLocationUsageSchema)
76828
+ /**
76829
+ * Per-physical-volume capacity. OPTIONAL, and consumers must render the rest
76830
+ * of the payload without it: the hub serves this method through a BAKED
76831
+ * router, so a hub whose framework train predates a change to this array
76832
+ * strips it out of an answer a newer recorder happily produced. A UI that
76833
+ * dereferences it unconditionally crashes the whole Storage page over a
76834
+ * missing disk bar.
76835
+ */
76836
+ locations: array(RecordingLocationUsageSchema).optional()
76817
76837
  });
76818
76838
  /**
76819
76839
  * The OPERATOR-ARMED half of multi-location recordings (D116).
@@ -87598,8 +87618,14 @@ Object.freeze({
87598
87618
  "network-access": "ingress",
87599
87619
  "smtp-provider": "email"
87600
87620
  });
87621
+ /** Schema defaults — an untouched sub-field must author exactly these. */
87622
+ var NC_AUDIO_DEFAULTS = {
87623
+ hitPercent: 60,
87624
+ samplingSeconds: 10
87625
+ };
87601
87626
  new Map(AUDIO_MACRO_LABELS.flatMap((macro) => macro.icon === void 0 ? [] : [[macro.id, macro.icon]]));
87602
87627
  new Set(["devices", "classes"]);
87628
+ NC_AUDIO_DEFAULTS.hitPercent, NC_AUDIO_DEFAULTS.samplingSeconds;
87603
87629
  /**
87604
87630
  * TimelapseRule — the STANDALONE scheduled timelapse producer's rule model.
87605
87631
  *
package/dist/addon.mjs CHANGED
@@ -76799,9 +76799,21 @@ var RecordingLocationUsageSchema = object({
76799
76799
  * previously rendered as two identical "disks" with a nonsensical used
76800
76800
  * split — hydrate attribution across aliases is arbitrary by nature. */
76801
76801
  locationIds: array(string()).optional(),
76802
- /** Bytes of recordings stored on this PHYSICAL volume (all aliases). */
76802
+ /**
76803
+ * Filesystem root of the physical volume this row accounts — the only
76804
+ * operator-legible identity when a location has no `displayName` yet, and
76805
+ * what a "which disk is full" alert has to name. OPTIONAL for the same
76806
+ * train-skew reason as `oldestMs`: a recorder that predates the field omits
76807
+ * it, and this schema must keep validating that older provider's payload.
76808
+ */
76809
+ root: string().optional(),
76810
+ /** Bytes of recordings stored on this PHYSICAL volume (all aliases). This is
76811
+ * the footage's SHARE of the volume, not how full the volume is — the disk
76812
+ * also holds everything that is not recordings. Volume fill is
76813
+ * `(totalBytes - availableBytes) / totalBytes`. */
76803
76814
  usedBytes: number(),
76804
- /** Free bytes on the location's volume; null when capacity is unknown (remote). */
76815
+ /** Free bytes on the location's volume; null when capacity is unknown
76816
+ * (remote/unstattable — the recorder logs the statfs failure with the root). */
76805
76817
  availableBytes: number().nullable(),
76806
76818
  /** Total bytes of the location's volume; null when unknown. */
76807
76819
  totalBytes: number().nullable()
@@ -76813,7 +76825,15 @@ var RecordingStorageUsageSchema = object({
76813
76825
  nodeId: string(),
76814
76826
  totalUsedBytes: number(),
76815
76827
  devices: array(RecordingDeviceUsageSchema),
76816
- locations: array(RecordingLocationUsageSchema)
76828
+ /**
76829
+ * Per-physical-volume capacity. OPTIONAL, and consumers must render the rest
76830
+ * of the payload without it: the hub serves this method through a BAKED
76831
+ * router, so a hub whose framework train predates a change to this array
76832
+ * strips it out of an answer a newer recorder happily produced. A UI that
76833
+ * dereferences it unconditionally crashes the whole Storage page over a
76834
+ * missing disk bar.
76835
+ */
76836
+ locations: array(RecordingLocationUsageSchema).optional()
76817
76837
  });
76818
76838
  /**
76819
76839
  * The OPERATOR-ARMED half of multi-location recordings (D116).
@@ -87598,8 +87618,14 @@ Object.freeze({
87598
87618
  "network-access": "ingress",
87599
87619
  "smtp-provider": "email"
87600
87620
  });
87621
+ /** Schema defaults — an untouched sub-field must author exactly these. */
87622
+ var NC_AUDIO_DEFAULTS = {
87623
+ hitPercent: 60,
87624
+ samplingSeconds: 10
87625
+ };
87601
87626
  new Map(AUDIO_MACRO_LABELS.flatMap((macro) => macro.icon === void 0 ? [] : [[macro.id, macro.icon]]));
87602
87627
  new Set(["devices", "classes"]);
87628
+ NC_AUDIO_DEFAULTS.hitPercent, NC_AUDIO_DEFAULTS.samplingSeconds;
87603
87629
  /**
87604
87630
  * TimelapseRule — the STANDALONE scheduled timelapse producer's rule model.
87605
87631
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-dreame",
3
- "version": "0.2.22",
3
+ "version": "0.2.23",
4
4
  "description": "Dreame robot-vacuum / lawn-mower device-provider addon for CamStack — wraps the @apocaliss92/nodedreame Dreamehome cloud client",
5
5
  "keywords": [
6
6
  "camstack",