@camstack/addon-google-services 0.2.23 → 0.2.25
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/google-services.addon.js +237 -61
- package/dist/google-services.addon.mjs +237 -61
- package/package.json +1 -1
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
let node_crypto = require("node:crypto");
|
|
6
|
-
//#region ../types/dist/event-category-
|
|
6
|
+
//#region ../types/dist/event-category-BfJwUd2S.mjs
|
|
7
7
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
8
8
|
EventCategory["SystemBoot"] = "system.boot";
|
|
9
9
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -320,6 +320,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
320
320
|
*/
|
|
321
321
|
EventCategory["PipelineDetectionBlind"] = "pipeline.detection-blind";
|
|
322
322
|
/**
|
|
323
|
+
* A camera's motion source has fired constantly with no subject for an hour
|
|
324
|
+
* (motion duty or session count over the bar, zero detections) — it is not
|
|
325
|
+
* blind, its motion zones or sensitivity want tuning (D907). Paired with
|
|
326
|
+
* {@link PipelineMotionCalm}.
|
|
327
|
+
*/
|
|
328
|
+
EventCategory["PipelineMotionNoisy"] = "pipeline.motion-noisy";
|
|
329
|
+
/** The recovery edge of {@link PipelineMotionNoisy}: the motion fell back, or a detection arrived. */
|
|
330
|
+
EventCategory["PipelineMotionCalm"] = "pipeline.motion-calm";
|
|
331
|
+
/**
|
|
323
332
|
* Per-camera pipeline config was mutated by the orchestrator
|
|
324
333
|
* (3-level settings change via `setAgentAddonDefaults` /
|
|
325
334
|
* `setCameraStepToggle` / `setCameraPipelineForAgent` or a
|
|
@@ -691,6 +700,14 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
691
700
|
EventCategory["BackupRestored"] = "backup.restored";
|
|
692
701
|
EventCategory["NotificationDispatched"] = "notification.dispatched";
|
|
693
702
|
EventCategory["NotificationFailed"] = "notification.failed";
|
|
703
|
+
/**
|
|
704
|
+
* A notification rule that cannot work (D905): its stored row does not load,
|
|
705
|
+
* or it still names a device / delivery target the prune CONFIRMED deleted.
|
|
706
|
+
* One edge per rule per distinct set of reasons; never on an unanswered read.
|
|
707
|
+
*/
|
|
708
|
+
EventCategory["NotificationRuleBroken"] = "notification.rule-broken";
|
|
709
|
+
/** The clear of {@link NotificationRuleBroken}: the rule loads and names nothing deleted. */
|
|
710
|
+
EventCategory["NotificationRuleRepaired"] = "notification.rule-repaired";
|
|
694
711
|
EventCategory["DeviceUpdated"] = "device.updated";
|
|
695
712
|
/**
|
|
696
713
|
* Transport-level connectivity. Emitted by the device driver when
|
|
@@ -5551,7 +5568,7 @@ var ZodIssueCode = {
|
|
|
5551
5568
|
var ZodFirstPartyTypeKind;
|
|
5552
5569
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5553
5570
|
//#endregion
|
|
5554
|
-
//#region ../types/dist/sleep-
|
|
5571
|
+
//#region ../types/dist/sleep-DJFUfKvA.mjs
|
|
5555
5572
|
/**
|
|
5556
5573
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5557
5574
|
* window to float samples (D455).
|
|
@@ -8150,7 +8167,7 @@ var EntryDescriptorSchema = object({
|
|
|
8150
8167
|
/** JSON Schema of the entry body; `secret: true` marks a password field. */
|
|
8151
8168
|
fields: record(string(), unknown())
|
|
8152
8169
|
}).strict();
|
|
8153
|
-
/** What crosses the wire
|
|
8170
|
+
/** What crosses the wire from an addon: JSON only, no Zod. An unknown key is refused. */
|
|
8154
8171
|
var RecordKindDeclarationSchema = object({
|
|
8155
8172
|
database: _enum(RECORD_DATABASES).default("settings"),
|
|
8156
8173
|
class: _enum(RECORD_CLASSES),
|
|
@@ -8169,14 +8186,6 @@ var RecordKindDeclarationSchema = object({
|
|
|
8169
8186
|
secretPaths: array(string().min(1)).default([]),
|
|
8170
8187
|
/** The id key of each array that carries a secret (`{ headers: 'name' }`). */
|
|
8171
8188
|
secretArrayKeys: record(string(), string()).default({}),
|
|
8172
|
-
/**
|
|
8173
|
-
* RETIRED (D900): the legacy table a kind adopted from during the records
|
|
8174
|
-
* migration. Nothing declares it any more and nothing reads it; the schema
|
|
8175
|
-
* still ACCEPTS it because the catalog rows the migration wrote carry it
|
|
8176
|
-
* (an orphaned kind is never redeclared) and an addon built before the
|
|
8177
|
-
* removal still sends it. Never set it.
|
|
8178
|
-
*/
|
|
8179
|
-
adoptsFrom: string().min(1).optional(),
|
|
8180
8189
|
/** Kinds that must agree through `transact` sit in one file under one family name. */
|
|
8181
8190
|
transactFamily: string().min(1).optional(),
|
|
8182
8191
|
entry: EntryDescriptorSchema.optional()
|
|
@@ -13089,17 +13098,6 @@ object({
|
|
|
13089
13098
|
createdAt: number(),
|
|
13090
13099
|
updatedAt: number()
|
|
13091
13100
|
});
|
|
13092
|
-
object({
|
|
13093
|
-
id: string(),
|
|
13094
|
-
label: string(),
|
|
13095
|
-
isAdmin: boolean().default(false),
|
|
13096
|
-
allowedProviders: AllowedProviderSchema,
|
|
13097
|
-
allowedDevices: AllowedDevicesSchema,
|
|
13098
|
-
tokenHash: string(),
|
|
13099
|
-
tokenPrefix: string(),
|
|
13100
|
-
createdAt: number(),
|
|
13101
|
-
lastUsedAt: number().optional()
|
|
13102
|
-
});
|
|
13103
13101
|
object({
|
|
13104
13102
|
id: string(),
|
|
13105
13103
|
userId: string(),
|
|
@@ -17043,16 +17041,36 @@ var RecordKindStateSchema = _enum([
|
|
|
17043
17041
|
var DeclareKindResultSchema = object({
|
|
17044
17042
|
kindId: number().int(),
|
|
17045
17043
|
state: RecordKindStateSchema,
|
|
17046
|
-
createdIndexes: array(string())
|
|
17047
|
-
/**
|
|
17048
|
-
* RETIRED (D900): always `null`. It carried the records-migration boot guard;
|
|
17049
|
-
* it stays on the wire, null, because an addon built before the removal reads
|
|
17050
|
-
* an ABSENT field as "adoption pending" and refuses to start.
|
|
17051
|
-
*/
|
|
17052
|
-
adoptionPending: _null()
|
|
17044
|
+
createdIndexes: array(string())
|
|
17053
17045
|
});
|
|
17054
17046
|
/** Keychain refs a write released (the old marker is gone from the row): the owner deletes the values. */
|
|
17055
17047
|
var SecretRefsList = array(string());
|
|
17048
|
+
/**
|
|
17049
|
+
* One op of a `transact`: the single-row writes, each on a kind of the caller.
|
|
17050
|
+
* All ops of one call share ONE database file and ONE `transactFamily`.
|
|
17051
|
+
*/
|
|
17052
|
+
var RecordTransactOpSchema = discriminatedUnion("op", [
|
|
17053
|
+
object({
|
|
17054
|
+
op: literal("put"),
|
|
17055
|
+
kind: RecordKindNameSchema,
|
|
17056
|
+
record: RecordInputSchema,
|
|
17057
|
+
ifRev: number().int().min(0).optional()
|
|
17058
|
+
}),
|
|
17059
|
+
object({
|
|
17060
|
+
op: literal("patch"),
|
|
17061
|
+
kind: RecordKindNameSchema,
|
|
17062
|
+
id: RecordIdSchema,
|
|
17063
|
+
data: RecordBodySchema,
|
|
17064
|
+
at: number().int().nullable().optional(),
|
|
17065
|
+
expiresAt: number().int().nullable().optional(),
|
|
17066
|
+
ifRev: number().int().min(1).optional()
|
|
17067
|
+
}),
|
|
17068
|
+
object({
|
|
17069
|
+
op: literal("delete"),
|
|
17070
|
+
kind: RecordKindNameSchema,
|
|
17071
|
+
id: RecordIdSchema
|
|
17072
|
+
})
|
|
17073
|
+
]);
|
|
17056
17074
|
var RecordSecretRefsSchema = record(string(), record(string(), string()));
|
|
17057
17075
|
method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema) }), object({ kinds: record(string(), DeclareKindResultSchema) }), {
|
|
17058
17076
|
kind: "mutation",
|
|
@@ -17159,6 +17177,16 @@ method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema)
|
|
|
17159
17177
|
}), {
|
|
17160
17178
|
kind: "mutation",
|
|
17161
17179
|
auth: "admin"
|
|
17180
|
+
}), method(object({ ops: array(RecordTransactOpSchema).min(1).max(RECORD_BATCH_MAX) }), object({
|
|
17181
|
+
results: array(object({
|
|
17182
|
+
rev: number().int().nullable(),
|
|
17183
|
+
deleted: boolean()
|
|
17184
|
+
})),
|
|
17185
|
+
releasedRefs: SecretRefsList,
|
|
17186
|
+
secretRefs: SecretRefsList
|
|
17187
|
+
}), {
|
|
17188
|
+
kind: "mutation",
|
|
17189
|
+
auth: "admin"
|
|
17162
17190
|
}), method(object({
|
|
17163
17191
|
deviceId: number().int(),
|
|
17164
17192
|
kinds: array(RecordKindNameSchema).optional()
|
|
@@ -42517,9 +42545,13 @@ var NcSystemEventKindSchema = _enum([
|
|
|
42517
42545
|
"node-updating",
|
|
42518
42546
|
"node-inference-unavailable",
|
|
42519
42547
|
"detection-blind",
|
|
42548
|
+
"motion-noisy",
|
|
42549
|
+
"motion-calm",
|
|
42520
42550
|
"recording-stalled",
|
|
42521
42551
|
"recording-healthy",
|
|
42522
42552
|
"recording-degraded",
|
|
42553
|
+
"device-attention-required",
|
|
42554
|
+
"device-attention-resolved",
|
|
42523
42555
|
"storage-location-low",
|
|
42524
42556
|
"storage-location-critical",
|
|
42525
42557
|
"storage-location-ok",
|
|
@@ -42543,6 +42575,8 @@ var NcSystemEventKindSchema = _enum([
|
|
|
42543
42575
|
"alert-critical",
|
|
42544
42576
|
"alert-error",
|
|
42545
42577
|
"alert-critical-resolved",
|
|
42578
|
+
"rule-broken",
|
|
42579
|
+
"rule-repaired",
|
|
42546
42580
|
"camera-online",
|
|
42547
42581
|
"camera-offline",
|
|
42548
42582
|
"camera-disabled",
|
|
@@ -54997,6 +55031,16 @@ object({
|
|
|
54997
55031
|
powerState: string().nullable(),
|
|
54998
55032
|
saltLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
54999
55033
|
rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
55034
|
+
/**
|
|
55035
|
+
* True while the appliance asks for its filter to be cleaned (smart-filter, filter-system or
|
|
55036
|
+
* combined care-and-filter reminder raised); false when every such reminder reads clear; null
|
|
55037
|
+
* when none is reported. A cleared reminder is not an unknown one.
|
|
55038
|
+
*/
|
|
55039
|
+
filterCleaningDue: boolean().nullable(),
|
|
55040
|
+
/** True while the machine-care (descaling / cleaning-program) reminder is raised; false when clear; null when not reported. */
|
|
55041
|
+
machineCareDue: boolean().nullable(),
|
|
55042
|
+
/** Program runs left before the machine-care reminder is due; null when the appliance does not say. */
|
|
55043
|
+
machineCareRemainingRuns: number().int().nonnegative().nullable(),
|
|
55000
55044
|
/** Option states: null when the appliance does not expose the option or has not said. */
|
|
55001
55045
|
halfLoad: boolean().nullable(),
|
|
55002
55046
|
hygienePlus: boolean().nullable(),
|
|
@@ -61614,16 +61658,6 @@ var UpdateUserInputSchema = object({
|
|
|
61614
61658
|
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61615
61659
|
scopes: array(TokenScopeSchema).optional()
|
|
61616
61660
|
});
|
|
61617
|
-
var ApiKeySummarySchema = object({
|
|
61618
|
-
id: string(),
|
|
61619
|
-
label: string(),
|
|
61620
|
-
isAdmin: boolean().default(false),
|
|
61621
|
-
allowedProviders: union([array(string()), literal("*")]).optional(),
|
|
61622
|
-
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61623
|
-
tokenPrefix: string(),
|
|
61624
|
-
createdAt: number(),
|
|
61625
|
-
lastUsedAt: number().optional()
|
|
61626
|
-
});
|
|
61627
61661
|
var OauthSessionSummarySchema = object({
|
|
61628
61662
|
id: string(),
|
|
61629
61663
|
userId: string(),
|
|
@@ -61645,8 +61679,7 @@ var TotpStatusSchema = object({
|
|
|
61645
61679
|
confirmedAt: number().nullable()
|
|
61646
61680
|
});
|
|
61647
61681
|
/**
|
|
61648
|
-
* user-management — singleton capability for user accounts
|
|
61649
|
-
* legacy API-key rows.
|
|
61682
|
+
* user-management — singleton capability for user accounts.
|
|
61650
61683
|
*
|
|
61651
61684
|
* v2 model: every method gated by `auth: 'admin'`. Admin-only delegation
|
|
61652
61685
|
* — the subset check on `setUserScopes` is moot
|
|
@@ -61702,10 +61735,6 @@ method(_void(), array(UserSummarySchema), { auth: "admin" }), method(CreateUserI
|
|
|
61702
61735
|
}), UserSummarySchema.extend({ passwordHash: string() }).nullable(), {
|
|
61703
61736
|
kind: "mutation",
|
|
61704
61737
|
access: "view"
|
|
61705
|
-
}), method(_void(), array(ApiKeySummarySchema), { auth: "admin" }), method(object({ id: string() }), object({ success: literal(true) }), {
|
|
61706
|
-
kind: "mutation",
|
|
61707
|
-
auth: "admin",
|
|
61708
|
-
access: "delete"
|
|
61709
61738
|
}), method(object({ userId: string() }), TotpSetupResultSchema, {
|
|
61710
61739
|
kind: "mutation",
|
|
61711
61740
|
auth: "admin",
|
|
@@ -69218,6 +69247,12 @@ Object.freeze({
|
|
|
69218
69247
|
addonId: null,
|
|
69219
69248
|
access: "view"
|
|
69220
69249
|
},
|
|
69250
|
+
"records.transact": {
|
|
69251
|
+
capName: "records",
|
|
69252
|
+
capScope: "system",
|
|
69253
|
+
addonId: null,
|
|
69254
|
+
access: "create"
|
|
69255
|
+
},
|
|
69221
69256
|
"sceneMonitor.captureReference": {
|
|
69222
69257
|
capName: "scene-monitor",
|
|
69223
69258
|
capScope: "device",
|
|
@@ -70550,12 +70585,6 @@ Object.freeze({
|
|
|
70550
70585
|
addonId: null,
|
|
70551
70586
|
access: "view"
|
|
70552
70587
|
},
|
|
70553
|
-
"userManagement.listApiKeys": {
|
|
70554
|
-
capName: "user-management",
|
|
70555
|
-
capScope: "system",
|
|
70556
|
-
addonId: null,
|
|
70557
|
-
access: "view"
|
|
70558
|
-
},
|
|
70559
70588
|
"userManagement.listExternalIdentities": {
|
|
70560
70589
|
capName: "user-management",
|
|
70561
70590
|
capScope: "system",
|
|
@@ -70610,12 +70639,6 @@ Object.freeze({
|
|
|
70610
70639
|
addonId: null,
|
|
70611
70640
|
access: "create"
|
|
70612
70641
|
},
|
|
70613
|
-
"userManagement.revokeApiKey": {
|
|
70614
|
-
capName: "user-management",
|
|
70615
|
-
capScope: "system",
|
|
70616
|
-
addonId: null,
|
|
70617
|
-
access: "delete"
|
|
70618
|
-
},
|
|
70619
70642
|
"userManagement.revokeOauthSession": {
|
|
70620
70643
|
capName: "user-management",
|
|
70621
70644
|
capScope: "system",
|
|
@@ -73980,9 +74003,13 @@ new Map(Object.entries({
|
|
|
73980
74003
|
"stream-online": "device-events",
|
|
73981
74004
|
"stream-offline": "device-events",
|
|
73982
74005
|
"detection-blind": "device-events",
|
|
74006
|
+
"motion-noisy": "device-events",
|
|
74007
|
+
"motion-calm": "device-events",
|
|
73983
74008
|
"recording-stalled": "device-events",
|
|
73984
74009
|
"recording-healthy": "device-events",
|
|
73985
74010
|
"recording-degraded": "device-events",
|
|
74011
|
+
"device-attention-required": "device-events",
|
|
74012
|
+
"device-attention-resolved": "device-events",
|
|
73986
74013
|
"node-online": "system",
|
|
73987
74014
|
"node-offline": "system",
|
|
73988
74015
|
"node-restarting": "system",
|
|
@@ -73999,6 +74026,8 @@ new Map(Object.entries({
|
|
|
73999
74026
|
"alert-critical": "system",
|
|
74000
74027
|
"alert-error": "system",
|
|
74001
74028
|
"alert-critical-resolved": "system",
|
|
74029
|
+
"rule-broken": "system",
|
|
74030
|
+
"rule-repaired": "system",
|
|
74002
74031
|
"storage-location-low": "system",
|
|
74003
74032
|
"storage-location-critical": "system",
|
|
74004
74033
|
"storage-location-ok": "system",
|
|
@@ -74063,6 +74092,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
74063
74092
|
label: "Detecting nothing",
|
|
74064
74093
|
kinds: ["detection-blind"]
|
|
74065
74094
|
},
|
|
74095
|
+
{
|
|
74096
|
+
id: "motion-noise",
|
|
74097
|
+
family: "device-events",
|
|
74098
|
+
label: "Motion without a subject",
|
|
74099
|
+
kinds: ["motion-noisy", "motion-calm"]
|
|
74100
|
+
},
|
|
74066
74101
|
{
|
|
74067
74102
|
id: "recording",
|
|
74068
74103
|
family: "device-events",
|
|
@@ -74073,6 +74108,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
74073
74108
|
"recording-degraded"
|
|
74074
74109
|
]
|
|
74075
74110
|
},
|
|
74111
|
+
{
|
|
74112
|
+
id: "device-attention",
|
|
74113
|
+
family: "device-events",
|
|
74114
|
+
label: "Needs attention",
|
|
74115
|
+
kinds: ["device-attention-required", "device-attention-resolved"]
|
|
74116
|
+
},
|
|
74076
74117
|
{
|
|
74077
74118
|
id: "nodes",
|
|
74078
74119
|
family: "system",
|
|
@@ -74133,6 +74174,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
74133
74174
|
"alert-critical-resolved"
|
|
74134
74175
|
]
|
|
74135
74176
|
},
|
|
74177
|
+
{
|
|
74178
|
+
id: "rule-health",
|
|
74179
|
+
family: "system",
|
|
74180
|
+
label: "Notification rules",
|
|
74181
|
+
kinds: ["rule-broken", "rule-repaired"]
|
|
74182
|
+
},
|
|
74136
74183
|
{
|
|
74137
74184
|
id: "alarm",
|
|
74138
74185
|
family: "alarm",
|
|
@@ -74206,6 +74253,7 @@ var ALERT_EPISODE = [
|
|
|
74206
74253
|
"alert-error",
|
|
74207
74254
|
"alert-critical-resolved"
|
|
74208
74255
|
];
|
|
74256
|
+
var DEVICE_ATTENTION = ["device-attention-required", "device-attention-resolved"];
|
|
74209
74257
|
var UPDATES = [
|
|
74210
74258
|
"addon-update-available",
|
|
74211
74259
|
"server-update-available",
|
|
@@ -74235,9 +74283,12 @@ var DEVICE_EVENTS = [
|
|
|
74235
74283
|
"stream-online",
|
|
74236
74284
|
"stream-offline",
|
|
74237
74285
|
"detection-blind",
|
|
74286
|
+
"motion-noisy",
|
|
74287
|
+
"motion-calm",
|
|
74238
74288
|
"recording-stalled",
|
|
74239
74289
|
"recording-healthy",
|
|
74240
74290
|
"recording-degraded",
|
|
74291
|
+
...DEVICE_ATTENTION,
|
|
74241
74292
|
...ALARM
|
|
74242
74293
|
];
|
|
74243
74294
|
/** Every kind a summary may speak about — the two summarisable families. */
|
|
@@ -74405,7 +74456,13 @@ var STATE_SUMMARY_VARS = [
|
|
|
74405
74456
|
[...RULE_TEXT],
|
|
74406
74457
|
[...RULE_TEXT],
|
|
74407
74458
|
[...RULE_TEXT],
|
|
74408
|
-
|
|
74459
|
+
[...RULE_TEXT],
|
|
74460
|
+
[...RULE_TEXT],
|
|
74461
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74462
|
+
[...RULE_TEXT],
|
|
74463
|
+
[...RULE_TEXT],
|
|
74464
|
+
[...RULE_TEXT],
|
|
74465
|
+
[...RULE_TEXT],
|
|
74409
74466
|
[...RULE_TEXT],
|
|
74410
74467
|
[...RULE_TEXT],
|
|
74411
74468
|
[...RULE_TEXT],
|
|
@@ -74423,11 +74480,11 @@ var STATE_SUMMARY_VARS = [
|
|
|
74423
74480
|
[...RULE_TEXT],
|
|
74424
74481
|
[...RULE_TEXT],
|
|
74425
74482
|
[...RULE_TEXT],
|
|
74483
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74426
74484
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74485
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74427
74486
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74428
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74429
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74430
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74487
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74431
74488
|
[...RULE_TEXT],
|
|
74432
74489
|
[...RULE_TEXT],
|
|
74433
74490
|
[...RULE_TEXT],
|
|
@@ -74448,6 +74505,125 @@ var STATE_SUMMARY_VARS = [
|
|
|
74448
74505
|
[...RULE_TEXT],
|
|
74449
74506
|
...STATE_SUMMARY_VARS
|
|
74450
74507
|
];
|
|
74508
|
+
new Map([
|
|
74509
|
+
{
|
|
74510
|
+
id: "device-connectivity",
|
|
74511
|
+
family: "device-events",
|
|
74512
|
+
label: "Device connectivity (offline / back online)",
|
|
74513
|
+
bad: ["device-offline"],
|
|
74514
|
+
recovery: ["device-online"],
|
|
74515
|
+
snapshotLabel: "Devices offline now",
|
|
74516
|
+
snapshotSection: "device-state"
|
|
74517
|
+
},
|
|
74518
|
+
{
|
|
74519
|
+
id: "device-switch",
|
|
74520
|
+
family: "device-events",
|
|
74521
|
+
label: "Device switched off / back on",
|
|
74522
|
+
bad: ["device-disabled"],
|
|
74523
|
+
recovery: ["device-enabled"],
|
|
74524
|
+
snapshotLabel: "Devices switched off now",
|
|
74525
|
+
snapshotSection: "device-state"
|
|
74526
|
+
},
|
|
74527
|
+
{
|
|
74528
|
+
id: "stream-connectivity",
|
|
74529
|
+
family: "device-events",
|
|
74530
|
+
label: "Stream connectivity (offline / back online)",
|
|
74531
|
+
bad: ["stream-offline"],
|
|
74532
|
+
recovery: ["stream-online"],
|
|
74533
|
+
snapshotLabel: "Streams offline now",
|
|
74534
|
+
snapshotSection: "streams"
|
|
74535
|
+
},
|
|
74536
|
+
{
|
|
74537
|
+
id: "battery",
|
|
74538
|
+
family: "device-events",
|
|
74539
|
+
label: "Battery (low / back to normal)",
|
|
74540
|
+
bad: ["device-battery-low"],
|
|
74541
|
+
recovery: ["device-battery-normal"],
|
|
74542
|
+
snapshotLabel: "Batteries low now",
|
|
74543
|
+
snapshotSection: "battery"
|
|
74544
|
+
},
|
|
74545
|
+
{
|
|
74546
|
+
id: "consumables",
|
|
74547
|
+
family: "device-events",
|
|
74548
|
+
label: "Consumables (low / replaced)",
|
|
74549
|
+
bad: ["device-consumable-low"],
|
|
74550
|
+
recovery: ["device-consumable-normal"],
|
|
74551
|
+
snapshotLabel: "Consumables low now",
|
|
74552
|
+
snapshotSection: "consumables"
|
|
74553
|
+
},
|
|
74554
|
+
{
|
|
74555
|
+
id: "tanks",
|
|
74556
|
+
family: "device-events",
|
|
74557
|
+
label: "Tanks (low or full / back to normal)",
|
|
74558
|
+
bad: ["device-tank-low", "device-tank-full"],
|
|
74559
|
+
recovery: ["device-tank-normal"],
|
|
74560
|
+
snapshotLabel: "Tanks low or full now",
|
|
74561
|
+
snapshotSection: "tanks"
|
|
74562
|
+
},
|
|
74563
|
+
{
|
|
74564
|
+
id: "motion-noise",
|
|
74565
|
+
family: "device-events",
|
|
74566
|
+
label: "Motion without a subject (constant / calm again)",
|
|
74567
|
+
bad: ["motion-noisy"],
|
|
74568
|
+
recovery: ["motion-calm"],
|
|
74569
|
+
snapshotLabel: "Cameras with constant motion now",
|
|
74570
|
+
snapshotSection: null
|
|
74571
|
+
},
|
|
74572
|
+
{
|
|
74573
|
+
id: "recording-health",
|
|
74574
|
+
family: "device-events",
|
|
74575
|
+
label: "Recording health (stalled or degraded / recording again)",
|
|
74576
|
+
bad: ["recording-stalled", "recording-degraded"],
|
|
74577
|
+
recovery: ["recording-healthy"],
|
|
74578
|
+
snapshotLabel: "Recordings stalled now",
|
|
74579
|
+
snapshotSection: null
|
|
74580
|
+
},
|
|
74581
|
+
{
|
|
74582
|
+
id: "device-attention",
|
|
74583
|
+
family: "device-events",
|
|
74584
|
+
label: "Device needs attention (raised / resolved)",
|
|
74585
|
+
bad: ["device-attention-required"],
|
|
74586
|
+
recovery: ["device-attention-resolved"],
|
|
74587
|
+
snapshotLabel: "Devices needing attention now",
|
|
74588
|
+
snapshotSection: null
|
|
74589
|
+
},
|
|
74590
|
+
{
|
|
74591
|
+
id: "node-connectivity",
|
|
74592
|
+
family: "system",
|
|
74593
|
+
label: "Node connectivity (offline / back online)",
|
|
74594
|
+
bad: ["node-offline"],
|
|
74595
|
+
recovery: ["node-online"],
|
|
74596
|
+
snapshotLabel: "Nodes offline now",
|
|
74597
|
+
snapshotSection: "nodes"
|
|
74598
|
+
},
|
|
74599
|
+
{
|
|
74600
|
+
id: "storage-space",
|
|
74601
|
+
family: "system",
|
|
74602
|
+
label: "Storage space (low or critical / ok again)",
|
|
74603
|
+
bad: ["storage-location-low", "storage-location-critical"],
|
|
74604
|
+
recovery: ["storage-location-ok"],
|
|
74605
|
+
snapshotLabel: "Storage locations low now",
|
|
74606
|
+
snapshotSection: null
|
|
74607
|
+
},
|
|
74608
|
+
{
|
|
74609
|
+
id: "critical-alerts",
|
|
74610
|
+
family: "system",
|
|
74611
|
+
label: "Critical alerts (raised / resolved)",
|
|
74612
|
+
bad: ["alert-critical"],
|
|
74613
|
+
recovery: ["alert-critical-resolved"],
|
|
74614
|
+
snapshotLabel: "Critical alerts open now",
|
|
74615
|
+
snapshotSection: null
|
|
74616
|
+
},
|
|
74617
|
+
{
|
|
74618
|
+
id: "rule-health",
|
|
74619
|
+
family: "system",
|
|
74620
|
+
label: "Rule health (broken / repaired)",
|
|
74621
|
+
bad: ["rule-broken"],
|
|
74622
|
+
recovery: ["rule-repaired"],
|
|
74623
|
+
snapshotLabel: "Notification rules broken now",
|
|
74624
|
+
snapshotSection: null
|
|
74625
|
+
}
|
|
74626
|
+
].flatMap((spec) => [...spec.bad, ...spec.recovery].map((kind) => [kind, spec])));
|
|
74451
74627
|
new Set([
|
|
74452
74628
|
"disarmed",
|
|
74453
74629
|
"armed_home",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { randomBytes } from "node:crypto";
|
|
2
|
-
//#region ../types/dist/event-category-
|
|
2
|
+
//#region ../types/dist/event-category-BfJwUd2S.mjs
|
|
3
3
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
4
4
|
EventCategory["SystemBoot"] = "system.boot";
|
|
5
5
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -316,6 +316,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
316
316
|
*/
|
|
317
317
|
EventCategory["PipelineDetectionBlind"] = "pipeline.detection-blind";
|
|
318
318
|
/**
|
|
319
|
+
* A camera's motion source has fired constantly with no subject for an hour
|
|
320
|
+
* (motion duty or session count over the bar, zero detections) — it is not
|
|
321
|
+
* blind, its motion zones or sensitivity want tuning (D907). Paired with
|
|
322
|
+
* {@link PipelineMotionCalm}.
|
|
323
|
+
*/
|
|
324
|
+
EventCategory["PipelineMotionNoisy"] = "pipeline.motion-noisy";
|
|
325
|
+
/** The recovery edge of {@link PipelineMotionNoisy}: the motion fell back, or a detection arrived. */
|
|
326
|
+
EventCategory["PipelineMotionCalm"] = "pipeline.motion-calm";
|
|
327
|
+
/**
|
|
319
328
|
* Per-camera pipeline config was mutated by the orchestrator
|
|
320
329
|
* (3-level settings change via `setAgentAddonDefaults` /
|
|
321
330
|
* `setCameraStepToggle` / `setCameraPipelineForAgent` or a
|
|
@@ -687,6 +696,14 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
687
696
|
EventCategory["BackupRestored"] = "backup.restored";
|
|
688
697
|
EventCategory["NotificationDispatched"] = "notification.dispatched";
|
|
689
698
|
EventCategory["NotificationFailed"] = "notification.failed";
|
|
699
|
+
/**
|
|
700
|
+
* A notification rule that cannot work (D905): its stored row does not load,
|
|
701
|
+
* or it still names a device / delivery target the prune CONFIRMED deleted.
|
|
702
|
+
* One edge per rule per distinct set of reasons; never on an unanswered read.
|
|
703
|
+
*/
|
|
704
|
+
EventCategory["NotificationRuleBroken"] = "notification.rule-broken";
|
|
705
|
+
/** The clear of {@link NotificationRuleBroken}: the rule loads and names nothing deleted. */
|
|
706
|
+
EventCategory["NotificationRuleRepaired"] = "notification.rule-repaired";
|
|
690
707
|
EventCategory["DeviceUpdated"] = "device.updated";
|
|
691
708
|
/**
|
|
692
709
|
* Transport-level connectivity. Emitted by the device driver when
|
|
@@ -5547,7 +5564,7 @@ var ZodIssueCode = {
|
|
|
5547
5564
|
var ZodFirstPartyTypeKind;
|
|
5548
5565
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5549
5566
|
//#endregion
|
|
5550
|
-
//#region ../types/dist/sleep-
|
|
5567
|
+
//#region ../types/dist/sleep-DJFUfKvA.mjs
|
|
5551
5568
|
/**
|
|
5552
5569
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5553
5570
|
* window to float samples (D455).
|
|
@@ -8146,7 +8163,7 @@ var EntryDescriptorSchema = object({
|
|
|
8146
8163
|
/** JSON Schema of the entry body; `secret: true` marks a password field. */
|
|
8147
8164
|
fields: record(string(), unknown())
|
|
8148
8165
|
}).strict();
|
|
8149
|
-
/** What crosses the wire
|
|
8166
|
+
/** What crosses the wire from an addon: JSON only, no Zod. An unknown key is refused. */
|
|
8150
8167
|
var RecordKindDeclarationSchema = object({
|
|
8151
8168
|
database: _enum(RECORD_DATABASES).default("settings"),
|
|
8152
8169
|
class: _enum(RECORD_CLASSES),
|
|
@@ -8165,14 +8182,6 @@ var RecordKindDeclarationSchema = object({
|
|
|
8165
8182
|
secretPaths: array(string().min(1)).default([]),
|
|
8166
8183
|
/** The id key of each array that carries a secret (`{ headers: 'name' }`). */
|
|
8167
8184
|
secretArrayKeys: record(string(), string()).default({}),
|
|
8168
|
-
/**
|
|
8169
|
-
* RETIRED (D900): the legacy table a kind adopted from during the records
|
|
8170
|
-
* migration. Nothing declares it any more and nothing reads it; the schema
|
|
8171
|
-
* still ACCEPTS it because the catalog rows the migration wrote carry it
|
|
8172
|
-
* (an orphaned kind is never redeclared) and an addon built before the
|
|
8173
|
-
* removal still sends it. Never set it.
|
|
8174
|
-
*/
|
|
8175
|
-
adoptsFrom: string().min(1).optional(),
|
|
8176
8185
|
/** Kinds that must agree through `transact` sit in one file under one family name. */
|
|
8177
8186
|
transactFamily: string().min(1).optional(),
|
|
8178
8187
|
entry: EntryDescriptorSchema.optional()
|
|
@@ -13085,17 +13094,6 @@ object({
|
|
|
13085
13094
|
createdAt: number(),
|
|
13086
13095
|
updatedAt: number()
|
|
13087
13096
|
});
|
|
13088
|
-
object({
|
|
13089
|
-
id: string(),
|
|
13090
|
-
label: string(),
|
|
13091
|
-
isAdmin: boolean().default(false),
|
|
13092
|
-
allowedProviders: AllowedProviderSchema,
|
|
13093
|
-
allowedDevices: AllowedDevicesSchema,
|
|
13094
|
-
tokenHash: string(),
|
|
13095
|
-
tokenPrefix: string(),
|
|
13096
|
-
createdAt: number(),
|
|
13097
|
-
lastUsedAt: number().optional()
|
|
13098
|
-
});
|
|
13099
13097
|
object({
|
|
13100
13098
|
id: string(),
|
|
13101
13099
|
userId: string(),
|
|
@@ -17039,16 +17037,36 @@ var RecordKindStateSchema = _enum([
|
|
|
17039
17037
|
var DeclareKindResultSchema = object({
|
|
17040
17038
|
kindId: number().int(),
|
|
17041
17039
|
state: RecordKindStateSchema,
|
|
17042
|
-
createdIndexes: array(string())
|
|
17043
|
-
/**
|
|
17044
|
-
* RETIRED (D900): always `null`. It carried the records-migration boot guard;
|
|
17045
|
-
* it stays on the wire, null, because an addon built before the removal reads
|
|
17046
|
-
* an ABSENT field as "adoption pending" and refuses to start.
|
|
17047
|
-
*/
|
|
17048
|
-
adoptionPending: _null()
|
|
17040
|
+
createdIndexes: array(string())
|
|
17049
17041
|
});
|
|
17050
17042
|
/** Keychain refs a write released (the old marker is gone from the row): the owner deletes the values. */
|
|
17051
17043
|
var SecretRefsList = array(string());
|
|
17044
|
+
/**
|
|
17045
|
+
* One op of a `transact`: the single-row writes, each on a kind of the caller.
|
|
17046
|
+
* All ops of one call share ONE database file and ONE `transactFamily`.
|
|
17047
|
+
*/
|
|
17048
|
+
var RecordTransactOpSchema = discriminatedUnion("op", [
|
|
17049
|
+
object({
|
|
17050
|
+
op: literal("put"),
|
|
17051
|
+
kind: RecordKindNameSchema,
|
|
17052
|
+
record: RecordInputSchema,
|
|
17053
|
+
ifRev: number().int().min(0).optional()
|
|
17054
|
+
}),
|
|
17055
|
+
object({
|
|
17056
|
+
op: literal("patch"),
|
|
17057
|
+
kind: RecordKindNameSchema,
|
|
17058
|
+
id: RecordIdSchema,
|
|
17059
|
+
data: RecordBodySchema,
|
|
17060
|
+
at: number().int().nullable().optional(),
|
|
17061
|
+
expiresAt: number().int().nullable().optional(),
|
|
17062
|
+
ifRev: number().int().min(1).optional()
|
|
17063
|
+
}),
|
|
17064
|
+
object({
|
|
17065
|
+
op: literal("delete"),
|
|
17066
|
+
kind: RecordKindNameSchema,
|
|
17067
|
+
id: RecordIdSchema
|
|
17068
|
+
})
|
|
17069
|
+
]);
|
|
17052
17070
|
var RecordSecretRefsSchema = record(string(), record(string(), string()));
|
|
17053
17071
|
method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema) }), object({ kinds: record(string(), DeclareKindResultSchema) }), {
|
|
17054
17072
|
kind: "mutation",
|
|
@@ -17155,6 +17173,16 @@ method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema)
|
|
|
17155
17173
|
}), {
|
|
17156
17174
|
kind: "mutation",
|
|
17157
17175
|
auth: "admin"
|
|
17176
|
+
}), method(object({ ops: array(RecordTransactOpSchema).min(1).max(RECORD_BATCH_MAX) }), object({
|
|
17177
|
+
results: array(object({
|
|
17178
|
+
rev: number().int().nullable(),
|
|
17179
|
+
deleted: boolean()
|
|
17180
|
+
})),
|
|
17181
|
+
releasedRefs: SecretRefsList,
|
|
17182
|
+
secretRefs: SecretRefsList
|
|
17183
|
+
}), {
|
|
17184
|
+
kind: "mutation",
|
|
17185
|
+
auth: "admin"
|
|
17158
17186
|
}), method(object({
|
|
17159
17187
|
deviceId: number().int(),
|
|
17160
17188
|
kinds: array(RecordKindNameSchema).optional()
|
|
@@ -42513,9 +42541,13 @@ var NcSystemEventKindSchema = _enum([
|
|
|
42513
42541
|
"node-updating",
|
|
42514
42542
|
"node-inference-unavailable",
|
|
42515
42543
|
"detection-blind",
|
|
42544
|
+
"motion-noisy",
|
|
42545
|
+
"motion-calm",
|
|
42516
42546
|
"recording-stalled",
|
|
42517
42547
|
"recording-healthy",
|
|
42518
42548
|
"recording-degraded",
|
|
42549
|
+
"device-attention-required",
|
|
42550
|
+
"device-attention-resolved",
|
|
42519
42551
|
"storage-location-low",
|
|
42520
42552
|
"storage-location-critical",
|
|
42521
42553
|
"storage-location-ok",
|
|
@@ -42539,6 +42571,8 @@ var NcSystemEventKindSchema = _enum([
|
|
|
42539
42571
|
"alert-critical",
|
|
42540
42572
|
"alert-error",
|
|
42541
42573
|
"alert-critical-resolved",
|
|
42574
|
+
"rule-broken",
|
|
42575
|
+
"rule-repaired",
|
|
42542
42576
|
"camera-online",
|
|
42543
42577
|
"camera-offline",
|
|
42544
42578
|
"camera-disabled",
|
|
@@ -54993,6 +55027,16 @@ object({
|
|
|
54993
55027
|
powerState: string().nullable(),
|
|
54994
55028
|
saltLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
54995
55029
|
rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
55030
|
+
/**
|
|
55031
|
+
* True while the appliance asks for its filter to be cleaned (smart-filter, filter-system or
|
|
55032
|
+
* combined care-and-filter reminder raised); false when every such reminder reads clear; null
|
|
55033
|
+
* when none is reported. A cleared reminder is not an unknown one.
|
|
55034
|
+
*/
|
|
55035
|
+
filterCleaningDue: boolean().nullable(),
|
|
55036
|
+
/** True while the machine-care (descaling / cleaning-program) reminder is raised; false when clear; null when not reported. */
|
|
55037
|
+
machineCareDue: boolean().nullable(),
|
|
55038
|
+
/** Program runs left before the machine-care reminder is due; null when the appliance does not say. */
|
|
55039
|
+
machineCareRemainingRuns: number().int().nonnegative().nullable(),
|
|
54996
55040
|
/** Option states: null when the appliance does not expose the option or has not said. */
|
|
54997
55041
|
halfLoad: boolean().nullable(),
|
|
54998
55042
|
hygienePlus: boolean().nullable(),
|
|
@@ -61610,16 +61654,6 @@ var UpdateUserInputSchema = object({
|
|
|
61610
61654
|
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61611
61655
|
scopes: array(TokenScopeSchema).optional()
|
|
61612
61656
|
});
|
|
61613
|
-
var ApiKeySummarySchema = object({
|
|
61614
|
-
id: string(),
|
|
61615
|
-
label: string(),
|
|
61616
|
-
isAdmin: boolean().default(false),
|
|
61617
|
-
allowedProviders: union([array(string()), literal("*")]).optional(),
|
|
61618
|
-
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61619
|
-
tokenPrefix: string(),
|
|
61620
|
-
createdAt: number(),
|
|
61621
|
-
lastUsedAt: number().optional()
|
|
61622
|
-
});
|
|
61623
61657
|
var OauthSessionSummarySchema = object({
|
|
61624
61658
|
id: string(),
|
|
61625
61659
|
userId: string(),
|
|
@@ -61641,8 +61675,7 @@ var TotpStatusSchema = object({
|
|
|
61641
61675
|
confirmedAt: number().nullable()
|
|
61642
61676
|
});
|
|
61643
61677
|
/**
|
|
61644
|
-
* user-management — singleton capability for user accounts
|
|
61645
|
-
* legacy API-key rows.
|
|
61678
|
+
* user-management — singleton capability for user accounts.
|
|
61646
61679
|
*
|
|
61647
61680
|
* v2 model: every method gated by `auth: 'admin'`. Admin-only delegation
|
|
61648
61681
|
* — the subset check on `setUserScopes` is moot
|
|
@@ -61698,10 +61731,6 @@ method(_void(), array(UserSummarySchema), { auth: "admin" }), method(CreateUserI
|
|
|
61698
61731
|
}), UserSummarySchema.extend({ passwordHash: string() }).nullable(), {
|
|
61699
61732
|
kind: "mutation",
|
|
61700
61733
|
access: "view"
|
|
61701
|
-
}), method(_void(), array(ApiKeySummarySchema), { auth: "admin" }), method(object({ id: string() }), object({ success: literal(true) }), {
|
|
61702
|
-
kind: "mutation",
|
|
61703
|
-
auth: "admin",
|
|
61704
|
-
access: "delete"
|
|
61705
61734
|
}), method(object({ userId: string() }), TotpSetupResultSchema, {
|
|
61706
61735
|
kind: "mutation",
|
|
61707
61736
|
auth: "admin",
|
|
@@ -69214,6 +69243,12 @@ Object.freeze({
|
|
|
69214
69243
|
addonId: null,
|
|
69215
69244
|
access: "view"
|
|
69216
69245
|
},
|
|
69246
|
+
"records.transact": {
|
|
69247
|
+
capName: "records",
|
|
69248
|
+
capScope: "system",
|
|
69249
|
+
addonId: null,
|
|
69250
|
+
access: "create"
|
|
69251
|
+
},
|
|
69217
69252
|
"sceneMonitor.captureReference": {
|
|
69218
69253
|
capName: "scene-monitor",
|
|
69219
69254
|
capScope: "device",
|
|
@@ -70546,12 +70581,6 @@ Object.freeze({
|
|
|
70546
70581
|
addonId: null,
|
|
70547
70582
|
access: "view"
|
|
70548
70583
|
},
|
|
70549
|
-
"userManagement.listApiKeys": {
|
|
70550
|
-
capName: "user-management",
|
|
70551
|
-
capScope: "system",
|
|
70552
|
-
addonId: null,
|
|
70553
|
-
access: "view"
|
|
70554
|
-
},
|
|
70555
70584
|
"userManagement.listExternalIdentities": {
|
|
70556
70585
|
capName: "user-management",
|
|
70557
70586
|
capScope: "system",
|
|
@@ -70606,12 +70635,6 @@ Object.freeze({
|
|
|
70606
70635
|
addonId: null,
|
|
70607
70636
|
access: "create"
|
|
70608
70637
|
},
|
|
70609
|
-
"userManagement.revokeApiKey": {
|
|
70610
|
-
capName: "user-management",
|
|
70611
|
-
capScope: "system",
|
|
70612
|
-
addonId: null,
|
|
70613
|
-
access: "delete"
|
|
70614
|
-
},
|
|
70615
70638
|
"userManagement.revokeOauthSession": {
|
|
70616
70639
|
capName: "user-management",
|
|
70617
70640
|
capScope: "system",
|
|
@@ -73976,9 +73999,13 @@ new Map(Object.entries({
|
|
|
73976
73999
|
"stream-online": "device-events",
|
|
73977
74000
|
"stream-offline": "device-events",
|
|
73978
74001
|
"detection-blind": "device-events",
|
|
74002
|
+
"motion-noisy": "device-events",
|
|
74003
|
+
"motion-calm": "device-events",
|
|
73979
74004
|
"recording-stalled": "device-events",
|
|
73980
74005
|
"recording-healthy": "device-events",
|
|
73981
74006
|
"recording-degraded": "device-events",
|
|
74007
|
+
"device-attention-required": "device-events",
|
|
74008
|
+
"device-attention-resolved": "device-events",
|
|
73982
74009
|
"node-online": "system",
|
|
73983
74010
|
"node-offline": "system",
|
|
73984
74011
|
"node-restarting": "system",
|
|
@@ -73995,6 +74022,8 @@ new Map(Object.entries({
|
|
|
73995
74022
|
"alert-critical": "system",
|
|
73996
74023
|
"alert-error": "system",
|
|
73997
74024
|
"alert-critical-resolved": "system",
|
|
74025
|
+
"rule-broken": "system",
|
|
74026
|
+
"rule-repaired": "system",
|
|
73998
74027
|
"storage-location-low": "system",
|
|
73999
74028
|
"storage-location-critical": "system",
|
|
74000
74029
|
"storage-location-ok": "system",
|
|
@@ -74059,6 +74088,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
74059
74088
|
label: "Detecting nothing",
|
|
74060
74089
|
kinds: ["detection-blind"]
|
|
74061
74090
|
},
|
|
74091
|
+
{
|
|
74092
|
+
id: "motion-noise",
|
|
74093
|
+
family: "device-events",
|
|
74094
|
+
label: "Motion without a subject",
|
|
74095
|
+
kinds: ["motion-noisy", "motion-calm"]
|
|
74096
|
+
},
|
|
74062
74097
|
{
|
|
74063
74098
|
id: "recording",
|
|
74064
74099
|
family: "device-events",
|
|
@@ -74069,6 +74104,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
74069
74104
|
"recording-degraded"
|
|
74070
74105
|
]
|
|
74071
74106
|
},
|
|
74107
|
+
{
|
|
74108
|
+
id: "device-attention",
|
|
74109
|
+
family: "device-events",
|
|
74110
|
+
label: "Needs attention",
|
|
74111
|
+
kinds: ["device-attention-required", "device-attention-resolved"]
|
|
74112
|
+
},
|
|
74072
74113
|
{
|
|
74073
74114
|
id: "nodes",
|
|
74074
74115
|
family: "system",
|
|
@@ -74129,6 +74170,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
74129
74170
|
"alert-critical-resolved"
|
|
74130
74171
|
]
|
|
74131
74172
|
},
|
|
74173
|
+
{
|
|
74174
|
+
id: "rule-health",
|
|
74175
|
+
family: "system",
|
|
74176
|
+
label: "Notification rules",
|
|
74177
|
+
kinds: ["rule-broken", "rule-repaired"]
|
|
74178
|
+
},
|
|
74132
74179
|
{
|
|
74133
74180
|
id: "alarm",
|
|
74134
74181
|
family: "alarm",
|
|
@@ -74202,6 +74249,7 @@ var ALERT_EPISODE = [
|
|
|
74202
74249
|
"alert-error",
|
|
74203
74250
|
"alert-critical-resolved"
|
|
74204
74251
|
];
|
|
74252
|
+
var DEVICE_ATTENTION = ["device-attention-required", "device-attention-resolved"];
|
|
74205
74253
|
var UPDATES = [
|
|
74206
74254
|
"addon-update-available",
|
|
74207
74255
|
"server-update-available",
|
|
@@ -74231,9 +74279,12 @@ var DEVICE_EVENTS = [
|
|
|
74231
74279
|
"stream-online",
|
|
74232
74280
|
"stream-offline",
|
|
74233
74281
|
"detection-blind",
|
|
74282
|
+
"motion-noisy",
|
|
74283
|
+
"motion-calm",
|
|
74234
74284
|
"recording-stalled",
|
|
74235
74285
|
"recording-healthy",
|
|
74236
74286
|
"recording-degraded",
|
|
74287
|
+
...DEVICE_ATTENTION,
|
|
74237
74288
|
...ALARM
|
|
74238
74289
|
];
|
|
74239
74290
|
/** Every kind a summary may speak about — the two summarisable families. */
|
|
@@ -74401,7 +74452,13 @@ var STATE_SUMMARY_VARS = [
|
|
|
74401
74452
|
[...RULE_TEXT],
|
|
74402
74453
|
[...RULE_TEXT],
|
|
74403
74454
|
[...RULE_TEXT],
|
|
74404
|
-
|
|
74455
|
+
[...RULE_TEXT],
|
|
74456
|
+
[...RULE_TEXT],
|
|
74457
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74458
|
+
[...RULE_TEXT],
|
|
74459
|
+
[...RULE_TEXT],
|
|
74460
|
+
[...RULE_TEXT],
|
|
74461
|
+
[...RULE_TEXT],
|
|
74405
74462
|
[...RULE_TEXT],
|
|
74406
74463
|
[...RULE_TEXT],
|
|
74407
74464
|
[...RULE_TEXT],
|
|
@@ -74419,11 +74476,11 @@ var STATE_SUMMARY_VARS = [
|
|
|
74419
74476
|
[...RULE_TEXT],
|
|
74420
74477
|
[...RULE_TEXT],
|
|
74421
74478
|
[...RULE_TEXT],
|
|
74479
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74422
74480
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74481
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74423
74482
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74424
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74425
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74426
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
74483
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
74427
74484
|
[...RULE_TEXT],
|
|
74428
74485
|
[...RULE_TEXT],
|
|
74429
74486
|
[...RULE_TEXT],
|
|
@@ -74444,6 +74501,125 @@ var STATE_SUMMARY_VARS = [
|
|
|
74444
74501
|
[...RULE_TEXT],
|
|
74445
74502
|
...STATE_SUMMARY_VARS
|
|
74446
74503
|
];
|
|
74504
|
+
new Map([
|
|
74505
|
+
{
|
|
74506
|
+
id: "device-connectivity",
|
|
74507
|
+
family: "device-events",
|
|
74508
|
+
label: "Device connectivity (offline / back online)",
|
|
74509
|
+
bad: ["device-offline"],
|
|
74510
|
+
recovery: ["device-online"],
|
|
74511
|
+
snapshotLabel: "Devices offline now",
|
|
74512
|
+
snapshotSection: "device-state"
|
|
74513
|
+
},
|
|
74514
|
+
{
|
|
74515
|
+
id: "device-switch",
|
|
74516
|
+
family: "device-events",
|
|
74517
|
+
label: "Device switched off / back on",
|
|
74518
|
+
bad: ["device-disabled"],
|
|
74519
|
+
recovery: ["device-enabled"],
|
|
74520
|
+
snapshotLabel: "Devices switched off now",
|
|
74521
|
+
snapshotSection: "device-state"
|
|
74522
|
+
},
|
|
74523
|
+
{
|
|
74524
|
+
id: "stream-connectivity",
|
|
74525
|
+
family: "device-events",
|
|
74526
|
+
label: "Stream connectivity (offline / back online)",
|
|
74527
|
+
bad: ["stream-offline"],
|
|
74528
|
+
recovery: ["stream-online"],
|
|
74529
|
+
snapshotLabel: "Streams offline now",
|
|
74530
|
+
snapshotSection: "streams"
|
|
74531
|
+
},
|
|
74532
|
+
{
|
|
74533
|
+
id: "battery",
|
|
74534
|
+
family: "device-events",
|
|
74535
|
+
label: "Battery (low / back to normal)",
|
|
74536
|
+
bad: ["device-battery-low"],
|
|
74537
|
+
recovery: ["device-battery-normal"],
|
|
74538
|
+
snapshotLabel: "Batteries low now",
|
|
74539
|
+
snapshotSection: "battery"
|
|
74540
|
+
},
|
|
74541
|
+
{
|
|
74542
|
+
id: "consumables",
|
|
74543
|
+
family: "device-events",
|
|
74544
|
+
label: "Consumables (low / replaced)",
|
|
74545
|
+
bad: ["device-consumable-low"],
|
|
74546
|
+
recovery: ["device-consumable-normal"],
|
|
74547
|
+
snapshotLabel: "Consumables low now",
|
|
74548
|
+
snapshotSection: "consumables"
|
|
74549
|
+
},
|
|
74550
|
+
{
|
|
74551
|
+
id: "tanks",
|
|
74552
|
+
family: "device-events",
|
|
74553
|
+
label: "Tanks (low or full / back to normal)",
|
|
74554
|
+
bad: ["device-tank-low", "device-tank-full"],
|
|
74555
|
+
recovery: ["device-tank-normal"],
|
|
74556
|
+
snapshotLabel: "Tanks low or full now",
|
|
74557
|
+
snapshotSection: "tanks"
|
|
74558
|
+
},
|
|
74559
|
+
{
|
|
74560
|
+
id: "motion-noise",
|
|
74561
|
+
family: "device-events",
|
|
74562
|
+
label: "Motion without a subject (constant / calm again)",
|
|
74563
|
+
bad: ["motion-noisy"],
|
|
74564
|
+
recovery: ["motion-calm"],
|
|
74565
|
+
snapshotLabel: "Cameras with constant motion now",
|
|
74566
|
+
snapshotSection: null
|
|
74567
|
+
},
|
|
74568
|
+
{
|
|
74569
|
+
id: "recording-health",
|
|
74570
|
+
family: "device-events",
|
|
74571
|
+
label: "Recording health (stalled or degraded / recording again)",
|
|
74572
|
+
bad: ["recording-stalled", "recording-degraded"],
|
|
74573
|
+
recovery: ["recording-healthy"],
|
|
74574
|
+
snapshotLabel: "Recordings stalled now",
|
|
74575
|
+
snapshotSection: null
|
|
74576
|
+
},
|
|
74577
|
+
{
|
|
74578
|
+
id: "device-attention",
|
|
74579
|
+
family: "device-events",
|
|
74580
|
+
label: "Device needs attention (raised / resolved)",
|
|
74581
|
+
bad: ["device-attention-required"],
|
|
74582
|
+
recovery: ["device-attention-resolved"],
|
|
74583
|
+
snapshotLabel: "Devices needing attention now",
|
|
74584
|
+
snapshotSection: null
|
|
74585
|
+
},
|
|
74586
|
+
{
|
|
74587
|
+
id: "node-connectivity",
|
|
74588
|
+
family: "system",
|
|
74589
|
+
label: "Node connectivity (offline / back online)",
|
|
74590
|
+
bad: ["node-offline"],
|
|
74591
|
+
recovery: ["node-online"],
|
|
74592
|
+
snapshotLabel: "Nodes offline now",
|
|
74593
|
+
snapshotSection: "nodes"
|
|
74594
|
+
},
|
|
74595
|
+
{
|
|
74596
|
+
id: "storage-space",
|
|
74597
|
+
family: "system",
|
|
74598
|
+
label: "Storage space (low or critical / ok again)",
|
|
74599
|
+
bad: ["storage-location-low", "storage-location-critical"],
|
|
74600
|
+
recovery: ["storage-location-ok"],
|
|
74601
|
+
snapshotLabel: "Storage locations low now",
|
|
74602
|
+
snapshotSection: null
|
|
74603
|
+
},
|
|
74604
|
+
{
|
|
74605
|
+
id: "critical-alerts",
|
|
74606
|
+
family: "system",
|
|
74607
|
+
label: "Critical alerts (raised / resolved)",
|
|
74608
|
+
bad: ["alert-critical"],
|
|
74609
|
+
recovery: ["alert-critical-resolved"],
|
|
74610
|
+
snapshotLabel: "Critical alerts open now",
|
|
74611
|
+
snapshotSection: null
|
|
74612
|
+
},
|
|
74613
|
+
{
|
|
74614
|
+
id: "rule-health",
|
|
74615
|
+
family: "system",
|
|
74616
|
+
label: "Rule health (broken / repaired)",
|
|
74617
|
+
bad: ["rule-broken"],
|
|
74618
|
+
recovery: ["rule-repaired"],
|
|
74619
|
+
snapshotLabel: "Notification rules broken now",
|
|
74620
|
+
snapshotSection: null
|
|
74621
|
+
}
|
|
74622
|
+
].flatMap((spec) => [...spec.bad, ...spec.recovery].map((kind) => [kind, spec])));
|
|
74447
74623
|
new Set([
|
|
74448
74624
|
"disarmed",
|
|
74449
74625
|
"armed_home",
|
package/package.json
CHANGED