@camstack/addon-provider-petkit 0.2.21 → 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 +37 -3
- package/dist/addon.mjs +37 -3
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -21341,6 +21341,14 @@ var ClipSchema = object({
|
|
|
21341
21341
|
endMs: number()
|
|
21342
21342
|
}),
|
|
21343
21343
|
/**
|
|
21344
|
+
* Distinct object classes attached to this visit (`person`, `car`, …),
|
|
21345
|
+
* dominant first, capped at {@link MAX_CLIP_LABELS}. The ribbon renders these
|
|
21346
|
+
* instead of the bare kind — "Object" tells the operator nothing a colour bar
|
|
21347
|
+
* did not. Absent (never empty) when the visit attached no classified object
|
|
21348
|
+
* event, so a motion/audio-only visit keeps its kind label.
|
|
21349
|
+
*/
|
|
21350
|
+
labels: array(string()).max(3).optional(),
|
|
21351
|
+
/**
|
|
21344
21352
|
* Lazy thumbnail URL, never inlined.
|
|
21345
21353
|
*
|
|
21346
21354
|
* Recording-derived clips (events-mode keep-window, and the prepared
|
|
@@ -27371,9 +27379,21 @@ var RecordingLocationUsageSchema = object({
|
|
|
27371
27379
|
* previously rendered as two identical "disks" with a nonsensical used
|
|
27372
27380
|
* split — hydrate attribution across aliases is arbitrary by nature. */
|
|
27373
27381
|
locationIds: array(string()).optional(),
|
|
27374
|
-
/**
|
|
27382
|
+
/**
|
|
27383
|
+
* Filesystem root of the physical volume this row accounts — the only
|
|
27384
|
+
* operator-legible identity when a location has no `displayName` yet, and
|
|
27385
|
+
* what a "which disk is full" alert has to name. OPTIONAL for the same
|
|
27386
|
+
* train-skew reason as `oldestMs`: a recorder that predates the field omits
|
|
27387
|
+
* it, and this schema must keep validating that older provider's payload.
|
|
27388
|
+
*/
|
|
27389
|
+
root: string().optional(),
|
|
27390
|
+
/** Bytes of recordings stored on this PHYSICAL volume (all aliases). This is
|
|
27391
|
+
* the footage's SHARE of the volume, not how full the volume is — the disk
|
|
27392
|
+
* also holds everything that is not recordings. Volume fill is
|
|
27393
|
+
* `(totalBytes - availableBytes) / totalBytes`. */
|
|
27375
27394
|
usedBytes: number(),
|
|
27376
|
-
/** Free bytes on the location's volume; null when capacity is unknown
|
|
27395
|
+
/** Free bytes on the location's volume; null when capacity is unknown
|
|
27396
|
+
* (remote/unstattable — the recorder logs the statfs failure with the root). */
|
|
27377
27397
|
availableBytes: number().nullable(),
|
|
27378
27398
|
/** Total bytes of the location's volume; null when unknown. */
|
|
27379
27399
|
totalBytes: number().nullable()
|
|
@@ -27385,7 +27405,15 @@ var RecordingStorageUsageSchema = object({
|
|
|
27385
27405
|
nodeId: string(),
|
|
27386
27406
|
totalUsedBytes: number(),
|
|
27387
27407
|
devices: array(RecordingDeviceUsageSchema),
|
|
27388
|
-
|
|
27408
|
+
/**
|
|
27409
|
+
* Per-physical-volume capacity. OPTIONAL, and consumers must render the rest
|
|
27410
|
+
* of the payload without it: the hub serves this method through a BAKED
|
|
27411
|
+
* router, so a hub whose framework train predates a change to this array
|
|
27412
|
+
* strips it out of an answer a newer recorder happily produced. A UI that
|
|
27413
|
+
* dereferences it unconditionally crashes the whole Storage page over a
|
|
27414
|
+
* missing disk bar.
|
|
27415
|
+
*/
|
|
27416
|
+
locations: array(RecordingLocationUsageSchema).optional()
|
|
27389
27417
|
});
|
|
27390
27418
|
/**
|
|
27391
27419
|
* The OPERATOR-ARMED half of multi-location recordings (D116).
|
|
@@ -38170,8 +38198,14 @@ Object.freeze({
|
|
|
38170
38198
|
"network-access": "ingress",
|
|
38171
38199
|
"smtp-provider": "email"
|
|
38172
38200
|
});
|
|
38201
|
+
/** Schema defaults — an untouched sub-field must author exactly these. */
|
|
38202
|
+
var NC_AUDIO_DEFAULTS = {
|
|
38203
|
+
hitPercent: 60,
|
|
38204
|
+
samplingSeconds: 10
|
|
38205
|
+
};
|
|
38173
38206
|
new Map(AUDIO_MACRO_LABELS.flatMap((macro) => macro.icon === void 0 ? [] : [[macro.id, macro.icon]]));
|
|
38174
38207
|
new Set(["devices", "classes"]);
|
|
38208
|
+
NC_AUDIO_DEFAULTS.hitPercent, NC_AUDIO_DEFAULTS.samplingSeconds;
|
|
38175
38209
|
/**
|
|
38176
38210
|
* TimelapseRule — the STANDALONE scheduled timelapse producer's rule model.
|
|
38177
38211
|
*
|
package/dist/addon.mjs
CHANGED
|
@@ -21340,6 +21340,14 @@ var ClipSchema = object({
|
|
|
21340
21340
|
endMs: number()
|
|
21341
21341
|
}),
|
|
21342
21342
|
/**
|
|
21343
|
+
* Distinct object classes attached to this visit (`person`, `car`, …),
|
|
21344
|
+
* dominant first, capped at {@link MAX_CLIP_LABELS}. The ribbon renders these
|
|
21345
|
+
* instead of the bare kind — "Object" tells the operator nothing a colour bar
|
|
21346
|
+
* did not. Absent (never empty) when the visit attached no classified object
|
|
21347
|
+
* event, so a motion/audio-only visit keeps its kind label.
|
|
21348
|
+
*/
|
|
21349
|
+
labels: array(string()).max(3).optional(),
|
|
21350
|
+
/**
|
|
21343
21351
|
* Lazy thumbnail URL, never inlined.
|
|
21344
21352
|
*
|
|
21345
21353
|
* Recording-derived clips (events-mode keep-window, and the prepared
|
|
@@ -27370,9 +27378,21 @@ var RecordingLocationUsageSchema = object({
|
|
|
27370
27378
|
* previously rendered as two identical "disks" with a nonsensical used
|
|
27371
27379
|
* split — hydrate attribution across aliases is arbitrary by nature. */
|
|
27372
27380
|
locationIds: array(string()).optional(),
|
|
27373
|
-
/**
|
|
27381
|
+
/**
|
|
27382
|
+
* Filesystem root of the physical volume this row accounts — the only
|
|
27383
|
+
* operator-legible identity when a location has no `displayName` yet, and
|
|
27384
|
+
* what a "which disk is full" alert has to name. OPTIONAL for the same
|
|
27385
|
+
* train-skew reason as `oldestMs`: a recorder that predates the field omits
|
|
27386
|
+
* it, and this schema must keep validating that older provider's payload.
|
|
27387
|
+
*/
|
|
27388
|
+
root: string().optional(),
|
|
27389
|
+
/** Bytes of recordings stored on this PHYSICAL volume (all aliases). This is
|
|
27390
|
+
* the footage's SHARE of the volume, not how full the volume is — the disk
|
|
27391
|
+
* also holds everything that is not recordings. Volume fill is
|
|
27392
|
+
* `(totalBytes - availableBytes) / totalBytes`. */
|
|
27374
27393
|
usedBytes: number(),
|
|
27375
|
-
/** Free bytes on the location's volume; null when capacity is unknown
|
|
27394
|
+
/** Free bytes on the location's volume; null when capacity is unknown
|
|
27395
|
+
* (remote/unstattable — the recorder logs the statfs failure with the root). */
|
|
27376
27396
|
availableBytes: number().nullable(),
|
|
27377
27397
|
/** Total bytes of the location's volume; null when unknown. */
|
|
27378
27398
|
totalBytes: number().nullable()
|
|
@@ -27384,7 +27404,15 @@ var RecordingStorageUsageSchema = object({
|
|
|
27384
27404
|
nodeId: string(),
|
|
27385
27405
|
totalUsedBytes: number(),
|
|
27386
27406
|
devices: array(RecordingDeviceUsageSchema),
|
|
27387
|
-
|
|
27407
|
+
/**
|
|
27408
|
+
* Per-physical-volume capacity. OPTIONAL, and consumers must render the rest
|
|
27409
|
+
* of the payload without it: the hub serves this method through a BAKED
|
|
27410
|
+
* router, so a hub whose framework train predates a change to this array
|
|
27411
|
+
* strips it out of an answer a newer recorder happily produced. A UI that
|
|
27412
|
+
* dereferences it unconditionally crashes the whole Storage page over a
|
|
27413
|
+
* missing disk bar.
|
|
27414
|
+
*/
|
|
27415
|
+
locations: array(RecordingLocationUsageSchema).optional()
|
|
27388
27416
|
});
|
|
27389
27417
|
/**
|
|
27390
27418
|
* The OPERATOR-ARMED half of multi-location recordings (D116).
|
|
@@ -38169,8 +38197,14 @@ Object.freeze({
|
|
|
38169
38197
|
"network-access": "ingress",
|
|
38170
38198
|
"smtp-provider": "email"
|
|
38171
38199
|
});
|
|
38200
|
+
/** Schema defaults — an untouched sub-field must author exactly these. */
|
|
38201
|
+
var NC_AUDIO_DEFAULTS = {
|
|
38202
|
+
hitPercent: 60,
|
|
38203
|
+
samplingSeconds: 10
|
|
38204
|
+
};
|
|
38172
38205
|
new Map(AUDIO_MACRO_LABELS.flatMap((macro) => macro.icon === void 0 ? [] : [[macro.id, macro.icon]]));
|
|
38173
38206
|
new Set(["devices", "classes"]);
|
|
38207
|
+
NC_AUDIO_DEFAULTS.hitPercent, NC_AUDIO_DEFAULTS.samplingSeconds;
|
|
38174
38208
|
/**
|
|
38175
38209
|
* TimelapseRule — the STANDALONE scheduled timelapse producer's rule model.
|
|
38176
38210
|
*
|
package/package.json
CHANGED