@camstack/addon-matter-broker 0.2.21 → 0.2.22

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
@@ -26349,9 +26349,21 @@ var RecordingLocationUsageSchema = object({
26349
26349
  * previously rendered as two identical "disks" with a nonsensical used
26350
26350
  * split — hydrate attribution across aliases is arbitrary by nature. */
26351
26351
  locationIds: array(string$2()).optional(),
26352
- /** Bytes of recordings stored on this PHYSICAL volume (all aliases). */
26352
+ /**
26353
+ * Filesystem root of the physical volume this row accounts — the only
26354
+ * operator-legible identity when a location has no `displayName` yet, and
26355
+ * what a "which disk is full" alert has to name. OPTIONAL for the same
26356
+ * train-skew reason as `oldestMs`: a recorder that predates the field omits
26357
+ * it, and this schema must keep validating that older provider's payload.
26358
+ */
26359
+ root: string$2().optional(),
26360
+ /** Bytes of recordings stored on this PHYSICAL volume (all aliases). This is
26361
+ * the footage's SHARE of the volume, not how full the volume is — the disk
26362
+ * also holds everything that is not recordings. Volume fill is
26363
+ * `(totalBytes - availableBytes) / totalBytes`. */
26353
26364
  usedBytes: number(),
26354
- /** Free bytes on the location's volume; null when capacity is unknown (remote). */
26365
+ /** Free bytes on the location's volume; null when capacity is unknown
26366
+ * (remote/unstattable — the recorder logs the statfs failure with the root). */
26355
26367
  availableBytes: number().nullable(),
26356
26368
  /** Total bytes of the location's volume; null when unknown. */
26357
26369
  totalBytes: number().nullable()
@@ -26363,7 +26375,15 @@ var RecordingStorageUsageSchema = object({
26363
26375
  nodeId: string$2(),
26364
26376
  totalUsedBytes: number(),
26365
26377
  devices: array(RecordingDeviceUsageSchema),
26366
- locations: array(RecordingLocationUsageSchema)
26378
+ /**
26379
+ * Per-physical-volume capacity. OPTIONAL, and consumers must render the rest
26380
+ * of the payload without it: the hub serves this method through a BAKED
26381
+ * router, so a hub whose framework train predates a change to this array
26382
+ * strips it out of an answer a newer recorder happily produced. A UI that
26383
+ * dereferences it unconditionally crashes the whole Storage page over a
26384
+ * missing disk bar.
26385
+ */
26386
+ locations: array(RecordingLocationUsageSchema).optional()
26367
26387
  });
26368
26388
  /**
26369
26389
  * The OPERATOR-ARMED half of multi-location recordings (D116).
@@ -37148,8 +37168,14 @@ Object.freeze({
37148
37168
  "network-access": "ingress",
37149
37169
  "smtp-provider": "email"
37150
37170
  });
37171
+ /** Schema defaults — an untouched sub-field must author exactly these. */
37172
+ var NC_AUDIO_DEFAULTS = {
37173
+ hitPercent: 60,
37174
+ samplingSeconds: 10
37175
+ };
37151
37176
  new Map(AUDIO_MACRO_LABELS.flatMap((macro) => macro.icon === void 0 ? [] : [[macro.id, macro.icon]]));
37152
37177
  new Set(["devices", "classes"]);
37178
+ NC_AUDIO_DEFAULTS.hitPercent, NC_AUDIO_DEFAULTS.samplingSeconds;
37153
37179
  /**
37154
37180
  * TimelapseRule — the STANDALONE scheduled timelapse producer's rule model.
37155
37181
  *
package/dist/addon.mjs CHANGED
@@ -26347,9 +26347,21 @@ var RecordingLocationUsageSchema = object({
26347
26347
  * previously rendered as two identical "disks" with a nonsensical used
26348
26348
  * split — hydrate attribution across aliases is arbitrary by nature. */
26349
26349
  locationIds: array(string$2()).optional(),
26350
- /** Bytes of recordings stored on this PHYSICAL volume (all aliases). */
26350
+ /**
26351
+ * Filesystem root of the physical volume this row accounts — the only
26352
+ * operator-legible identity when a location has no `displayName` yet, and
26353
+ * what a "which disk is full" alert has to name. OPTIONAL for the same
26354
+ * train-skew reason as `oldestMs`: a recorder that predates the field omits
26355
+ * it, and this schema must keep validating that older provider's payload.
26356
+ */
26357
+ root: string$2().optional(),
26358
+ /** Bytes of recordings stored on this PHYSICAL volume (all aliases). This is
26359
+ * the footage's SHARE of the volume, not how full the volume is — the disk
26360
+ * also holds everything that is not recordings. Volume fill is
26361
+ * `(totalBytes - availableBytes) / totalBytes`. */
26351
26362
  usedBytes: number(),
26352
- /** Free bytes on the location's volume; null when capacity is unknown (remote). */
26363
+ /** Free bytes on the location's volume; null when capacity is unknown
26364
+ * (remote/unstattable — the recorder logs the statfs failure with the root). */
26353
26365
  availableBytes: number().nullable(),
26354
26366
  /** Total bytes of the location's volume; null when unknown. */
26355
26367
  totalBytes: number().nullable()
@@ -26361,7 +26373,15 @@ var RecordingStorageUsageSchema = object({
26361
26373
  nodeId: string$2(),
26362
26374
  totalUsedBytes: number(),
26363
26375
  devices: array(RecordingDeviceUsageSchema),
26364
- locations: array(RecordingLocationUsageSchema)
26376
+ /**
26377
+ * Per-physical-volume capacity. OPTIONAL, and consumers must render the rest
26378
+ * of the payload without it: the hub serves this method through a BAKED
26379
+ * router, so a hub whose framework train predates a change to this array
26380
+ * strips it out of an answer a newer recorder happily produced. A UI that
26381
+ * dereferences it unconditionally crashes the whole Storage page over a
26382
+ * missing disk bar.
26383
+ */
26384
+ locations: array(RecordingLocationUsageSchema).optional()
26365
26385
  });
26366
26386
  /**
26367
26387
  * The OPERATOR-ARMED half of multi-location recordings (D116).
@@ -37146,8 +37166,14 @@ Object.freeze({
37146
37166
  "network-access": "ingress",
37147
37167
  "smtp-provider": "email"
37148
37168
  });
37169
+ /** Schema defaults — an untouched sub-field must author exactly these. */
37170
+ var NC_AUDIO_DEFAULTS = {
37171
+ hitPercent: 60,
37172
+ samplingSeconds: 10
37173
+ };
37149
37174
  new Map(AUDIO_MACRO_LABELS.flatMap((macro) => macro.icon === void 0 ? [] : [[macro.id, macro.icon]]));
37150
37175
  new Set(["devices", "classes"]);
37176
+ NC_AUDIO_DEFAULTS.hitPercent, NC_AUDIO_DEFAULTS.samplingSeconds;
37151
37177
  /**
37152
37178
  * TimelapseRule — the STANDALONE scheduled timelapse producer's rule model.
37153
37179
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-matter-broker",
3
- "version": "0.2.21",
3
+ "version": "0.2.22",
4
4
  "description": "Matter broker addon for CamStack — owns a Matter fabric (commissioning + the long-lived controller) via the matter.js controller and brokers commissioned Matter nodes into CamStack",
5
5
  "keywords": [
6
6
  "camstack",