@camstack/addon-smtp-nodemailer 1.2.136 → 1.2.137
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/smtp.addon.js +114 -61
- package/dist/smtp.addon.mjs +114 -61
- package/package.json +1 -1
package/dist/smtp.addon.js
CHANGED
|
@@ -36,7 +36,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
36
36
|
}) : target, mod));
|
|
37
37
|
var __toCommonJS = (mod) => __hasOwnProp.call(mod, "module.exports") ? mod["module.exports"] : __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
38
38
|
//#endregion
|
|
39
|
-
//#region ../types/dist/event-category-
|
|
39
|
+
//#region ../types/dist/event-category-BfJwUd2S.mjs
|
|
40
40
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
41
41
|
EventCategory["SystemBoot"] = "system.boot";
|
|
42
42
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -353,6 +353,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
353
353
|
*/
|
|
354
354
|
EventCategory["PipelineDetectionBlind"] = "pipeline.detection-blind";
|
|
355
355
|
/**
|
|
356
|
+
* A camera's motion source has fired constantly with no subject for an hour
|
|
357
|
+
* (motion duty or session count over the bar, zero detections) — it is not
|
|
358
|
+
* blind, its motion zones or sensitivity want tuning (D907). Paired with
|
|
359
|
+
* {@link PipelineMotionCalm}.
|
|
360
|
+
*/
|
|
361
|
+
EventCategory["PipelineMotionNoisy"] = "pipeline.motion-noisy";
|
|
362
|
+
/** The recovery edge of {@link PipelineMotionNoisy}: the motion fell back, or a detection arrived. */
|
|
363
|
+
EventCategory["PipelineMotionCalm"] = "pipeline.motion-calm";
|
|
364
|
+
/**
|
|
356
365
|
* Per-camera pipeline config was mutated by the orchestrator
|
|
357
366
|
* (3-level settings change via `setAgentAddonDefaults` /
|
|
358
367
|
* `setCameraStepToggle` / `setCameraPipelineForAgent` or a
|
|
@@ -5459,7 +5468,7 @@ var ZodIssueCode = {
|
|
|
5459
5468
|
var ZodFirstPartyTypeKind;
|
|
5460
5469
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5461
5470
|
//#endregion
|
|
5462
|
-
//#region ../types/dist/sleep-
|
|
5471
|
+
//#region ../types/dist/sleep-DJFUfKvA.mjs
|
|
5463
5472
|
/**
|
|
5464
5473
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5465
5474
|
* window to float samples (D455).
|
|
@@ -7921,7 +7930,7 @@ var EntryDescriptorSchema = object({
|
|
|
7921
7930
|
/** JSON Schema of the entry body; `secret: true` marks a password field. */
|
|
7922
7931
|
fields: record(string(), unknown())
|
|
7923
7932
|
}).strict();
|
|
7924
|
-
/** What crosses the wire
|
|
7933
|
+
/** What crosses the wire from an addon: JSON only, no Zod. An unknown key is refused. */
|
|
7925
7934
|
var RecordKindDeclarationSchema = object({
|
|
7926
7935
|
database: _enum(RECORD_DATABASES).default("settings"),
|
|
7927
7936
|
class: _enum(RECORD_CLASSES),
|
|
@@ -7940,14 +7949,6 @@ var RecordKindDeclarationSchema = object({
|
|
|
7940
7949
|
secretPaths: array(string().min(1)).default([]),
|
|
7941
7950
|
/** The id key of each array that carries a secret (`{ headers: 'name' }`). */
|
|
7942
7951
|
secretArrayKeys: record(string(), string()).default({}),
|
|
7943
|
-
/**
|
|
7944
|
-
* RETIRED (D900): the legacy table a kind adopted from during the records
|
|
7945
|
-
* migration. Nothing declares it any more and nothing reads it; the schema
|
|
7946
|
-
* still ACCEPTS it because the catalog rows the migration wrote carry it
|
|
7947
|
-
* (an orphaned kind is never redeclared) and an addon built before the
|
|
7948
|
-
* removal still sends it. Never set it.
|
|
7949
|
-
*/
|
|
7950
|
-
adoptsFrom: string().min(1).optional(),
|
|
7951
7952
|
/** Kinds that must agree through `transact` sit in one file under one family name. */
|
|
7952
7953
|
transactFamily: string().min(1).optional(),
|
|
7953
7954
|
entry: EntryDescriptorSchema.optional()
|
|
@@ -12611,17 +12612,6 @@ object({
|
|
|
12611
12612
|
createdAt: number(),
|
|
12612
12613
|
updatedAt: number()
|
|
12613
12614
|
});
|
|
12614
|
-
object({
|
|
12615
|
-
id: string(),
|
|
12616
|
-
label: string(),
|
|
12617
|
-
isAdmin: boolean().default(false),
|
|
12618
|
-
allowedProviders: AllowedProviderSchema,
|
|
12619
|
-
allowedDevices: AllowedDevicesSchema,
|
|
12620
|
-
tokenHash: string(),
|
|
12621
|
-
tokenPrefix: string(),
|
|
12622
|
-
createdAt: number(),
|
|
12623
|
-
lastUsedAt: number().optional()
|
|
12624
|
-
});
|
|
12625
12615
|
object({
|
|
12626
12616
|
id: string(),
|
|
12627
12617
|
userId: string(),
|
|
@@ -16497,16 +16487,36 @@ var RecordKindStateSchema = _enum([
|
|
|
16497
16487
|
var DeclareKindResultSchema = object({
|
|
16498
16488
|
kindId: number().int(),
|
|
16499
16489
|
state: RecordKindStateSchema,
|
|
16500
|
-
createdIndexes: array(string())
|
|
16501
|
-
/**
|
|
16502
|
-
* RETIRED (D900): always `null`. It carried the records-migration boot guard;
|
|
16503
|
-
* it stays on the wire, null, because an addon built before the removal reads
|
|
16504
|
-
* an ABSENT field as "adoption pending" and refuses to start.
|
|
16505
|
-
*/
|
|
16506
|
-
adoptionPending: _null()
|
|
16490
|
+
createdIndexes: array(string())
|
|
16507
16491
|
});
|
|
16508
16492
|
/** Keychain refs a write released (the old marker is gone from the row): the owner deletes the values. */
|
|
16509
16493
|
var SecretRefsList = array(string());
|
|
16494
|
+
/**
|
|
16495
|
+
* One op of a `transact`: the single-row writes, each on a kind of the caller.
|
|
16496
|
+
* All ops of one call share ONE database file and ONE `transactFamily`.
|
|
16497
|
+
*/
|
|
16498
|
+
var RecordTransactOpSchema = discriminatedUnion("op", [
|
|
16499
|
+
object({
|
|
16500
|
+
op: literal("put"),
|
|
16501
|
+
kind: RecordKindNameSchema,
|
|
16502
|
+
record: RecordInputSchema,
|
|
16503
|
+
ifRev: number().int().min(0).optional()
|
|
16504
|
+
}),
|
|
16505
|
+
object({
|
|
16506
|
+
op: literal("patch"),
|
|
16507
|
+
kind: RecordKindNameSchema,
|
|
16508
|
+
id: RecordIdSchema,
|
|
16509
|
+
data: RecordBodySchema,
|
|
16510
|
+
at: number().int().nullable().optional(),
|
|
16511
|
+
expiresAt: number().int().nullable().optional(),
|
|
16512
|
+
ifRev: number().int().min(1).optional()
|
|
16513
|
+
}),
|
|
16514
|
+
object({
|
|
16515
|
+
op: literal("delete"),
|
|
16516
|
+
kind: RecordKindNameSchema,
|
|
16517
|
+
id: RecordIdSchema
|
|
16518
|
+
})
|
|
16519
|
+
]);
|
|
16510
16520
|
var RecordSecretRefsSchema = record(string(), record(string(), string()));
|
|
16511
16521
|
method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema) }), object({ kinds: record(string(), DeclareKindResultSchema) }), {
|
|
16512
16522
|
kind: "mutation",
|
|
@@ -16613,6 +16623,16 @@ method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema)
|
|
|
16613
16623
|
}), {
|
|
16614
16624
|
kind: "mutation",
|
|
16615
16625
|
auth: "admin"
|
|
16626
|
+
}), method(object({ ops: array(RecordTransactOpSchema).min(1).max(RECORD_BATCH_MAX) }), object({
|
|
16627
|
+
results: array(object({
|
|
16628
|
+
rev: number().int().nullable(),
|
|
16629
|
+
deleted: boolean()
|
|
16630
|
+
})),
|
|
16631
|
+
releasedRefs: SecretRefsList,
|
|
16632
|
+
secretRefs: SecretRefsList
|
|
16633
|
+
}), {
|
|
16634
|
+
kind: "mutation",
|
|
16635
|
+
auth: "admin"
|
|
16616
16636
|
}), method(object({
|
|
16617
16637
|
deviceId: number().int(),
|
|
16618
16638
|
kinds: array(RecordKindNameSchema).optional()
|
|
@@ -41971,9 +41991,13 @@ var NcSystemEventKindSchema = _enum([
|
|
|
41971
41991
|
"node-updating",
|
|
41972
41992
|
"node-inference-unavailable",
|
|
41973
41993
|
"detection-blind",
|
|
41994
|
+
"motion-noisy",
|
|
41995
|
+
"motion-calm",
|
|
41974
41996
|
"recording-stalled",
|
|
41975
41997
|
"recording-healthy",
|
|
41976
41998
|
"recording-degraded",
|
|
41999
|
+
"device-attention-required",
|
|
42000
|
+
"device-attention-resolved",
|
|
41977
42001
|
"storage-location-low",
|
|
41978
42002
|
"storage-location-critical",
|
|
41979
42003
|
"storage-location-ok",
|
|
@@ -54443,6 +54467,16 @@ object({
|
|
|
54443
54467
|
powerState: string().nullable(),
|
|
54444
54468
|
saltLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
54445
54469
|
rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
54470
|
+
/**
|
|
54471
|
+
* True while the appliance asks for its filter to be cleaned (smart-filter, filter-system or
|
|
54472
|
+
* combined care-and-filter reminder raised); false when every such reminder reads clear; null
|
|
54473
|
+
* when none is reported. A cleared reminder is not an unknown one.
|
|
54474
|
+
*/
|
|
54475
|
+
filterCleaningDue: boolean().nullable(),
|
|
54476
|
+
/** True while the machine-care (descaling / cleaning-program) reminder is raised; false when clear; null when not reported. */
|
|
54477
|
+
machineCareDue: boolean().nullable(),
|
|
54478
|
+
/** Program runs left before the machine-care reminder is due; null when the appliance does not say. */
|
|
54479
|
+
machineCareRemainingRuns: number().int().nonnegative().nullable(),
|
|
54446
54480
|
/** Option states: null when the appliance does not expose the option or has not said. */
|
|
54447
54481
|
halfLoad: boolean().nullable(),
|
|
54448
54482
|
hygienePlus: boolean().nullable(),
|
|
@@ -61060,16 +61094,6 @@ var UpdateUserInputSchema = object({
|
|
|
61060
61094
|
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61061
61095
|
scopes: array(TokenScopeSchema).optional()
|
|
61062
61096
|
});
|
|
61063
|
-
var ApiKeySummarySchema = object({
|
|
61064
|
-
id: string(),
|
|
61065
|
-
label: string(),
|
|
61066
|
-
isAdmin: boolean().default(false),
|
|
61067
|
-
allowedProviders: union([array(string()), literal("*")]).optional(),
|
|
61068
|
-
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61069
|
-
tokenPrefix: string(),
|
|
61070
|
-
createdAt: number(),
|
|
61071
|
-
lastUsedAt: number().optional()
|
|
61072
|
-
});
|
|
61073
61097
|
var OauthSessionSummarySchema = object({
|
|
61074
61098
|
id: string(),
|
|
61075
61099
|
userId: string(),
|
|
@@ -61091,8 +61115,7 @@ var TotpStatusSchema = object({
|
|
|
61091
61115
|
confirmedAt: number().nullable()
|
|
61092
61116
|
});
|
|
61093
61117
|
/**
|
|
61094
|
-
* user-management — singleton capability for user accounts
|
|
61095
|
-
* legacy API-key rows.
|
|
61118
|
+
* user-management — singleton capability for user accounts.
|
|
61096
61119
|
*
|
|
61097
61120
|
* v2 model: every method gated by `auth: 'admin'`. Admin-only delegation
|
|
61098
61121
|
* — the subset check on `setUserScopes` is moot
|
|
@@ -61148,10 +61171,6 @@ method(_void(), array(UserSummarySchema), { auth: "admin" }), method(CreateUserI
|
|
|
61148
61171
|
}), UserSummarySchema.extend({ passwordHash: string() }).nullable(), {
|
|
61149
61172
|
kind: "mutation",
|
|
61150
61173
|
access: "view"
|
|
61151
|
-
}), method(_void(), array(ApiKeySummarySchema), { auth: "admin" }), method(object({ id: string() }), object({ success: literal(true) }), {
|
|
61152
|
-
kind: "mutation",
|
|
61153
|
-
auth: "admin",
|
|
61154
|
-
access: "delete"
|
|
61155
61174
|
}), method(object({ userId: string() }), TotpSetupResultSchema, {
|
|
61156
61175
|
kind: "mutation",
|
|
61157
61176
|
auth: "admin",
|
|
@@ -68664,6 +68683,12 @@ Object.freeze({
|
|
|
68664
68683
|
addonId: null,
|
|
68665
68684
|
access: "view"
|
|
68666
68685
|
},
|
|
68686
|
+
"records.transact": {
|
|
68687
|
+
capName: "records",
|
|
68688
|
+
capScope: "system",
|
|
68689
|
+
addonId: null,
|
|
68690
|
+
access: "create"
|
|
68691
|
+
},
|
|
68667
68692
|
"sceneMonitor.captureReference": {
|
|
68668
68693
|
capName: "scene-monitor",
|
|
68669
68694
|
capScope: "device",
|
|
@@ -69996,12 +70021,6 @@ Object.freeze({
|
|
|
69996
70021
|
addonId: null,
|
|
69997
70022
|
access: "view"
|
|
69998
70023
|
},
|
|
69999
|
-
"userManagement.listApiKeys": {
|
|
70000
|
-
capName: "user-management",
|
|
70001
|
-
capScope: "system",
|
|
70002
|
-
addonId: null,
|
|
70003
|
-
access: "view"
|
|
70004
|
-
},
|
|
70005
70024
|
"userManagement.listExternalIdentities": {
|
|
70006
70025
|
capName: "user-management",
|
|
70007
70026
|
capScope: "system",
|
|
@@ -70056,12 +70075,6 @@ Object.freeze({
|
|
|
70056
70075
|
addonId: null,
|
|
70057
70076
|
access: "create"
|
|
70058
70077
|
},
|
|
70059
|
-
"userManagement.revokeApiKey": {
|
|
70060
|
-
capName: "user-management",
|
|
70061
|
-
capScope: "system",
|
|
70062
|
-
addonId: null,
|
|
70063
|
-
access: "delete"
|
|
70064
|
-
},
|
|
70065
70078
|
"userManagement.revokeOauthSession": {
|
|
70066
70079
|
capName: "user-management",
|
|
70067
70080
|
capScope: "system",
|
|
@@ -73426,9 +73439,13 @@ new Map(Object.entries({
|
|
|
73426
73439
|
"stream-online": "device-events",
|
|
73427
73440
|
"stream-offline": "device-events",
|
|
73428
73441
|
"detection-blind": "device-events",
|
|
73442
|
+
"motion-noisy": "device-events",
|
|
73443
|
+
"motion-calm": "device-events",
|
|
73429
73444
|
"recording-stalled": "device-events",
|
|
73430
73445
|
"recording-healthy": "device-events",
|
|
73431
73446
|
"recording-degraded": "device-events",
|
|
73447
|
+
"device-attention-required": "device-events",
|
|
73448
|
+
"device-attention-resolved": "device-events",
|
|
73432
73449
|
"node-online": "system",
|
|
73433
73450
|
"node-offline": "system",
|
|
73434
73451
|
"node-restarting": "system",
|
|
@@ -73511,6 +73528,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
73511
73528
|
label: "Detecting nothing",
|
|
73512
73529
|
kinds: ["detection-blind"]
|
|
73513
73530
|
},
|
|
73531
|
+
{
|
|
73532
|
+
id: "motion-noise",
|
|
73533
|
+
family: "device-events",
|
|
73534
|
+
label: "Motion without a subject",
|
|
73535
|
+
kinds: ["motion-noisy", "motion-calm"]
|
|
73536
|
+
},
|
|
73514
73537
|
{
|
|
73515
73538
|
id: "recording",
|
|
73516
73539
|
family: "device-events",
|
|
@@ -73521,6 +73544,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
73521
73544
|
"recording-degraded"
|
|
73522
73545
|
]
|
|
73523
73546
|
},
|
|
73547
|
+
{
|
|
73548
|
+
id: "device-attention",
|
|
73549
|
+
family: "device-events",
|
|
73550
|
+
label: "Needs attention",
|
|
73551
|
+
kinds: ["device-attention-required", "device-attention-resolved"]
|
|
73552
|
+
},
|
|
73524
73553
|
{
|
|
73525
73554
|
id: "nodes",
|
|
73526
73555
|
family: "system",
|
|
@@ -73660,6 +73689,7 @@ var ALERT_EPISODE = [
|
|
|
73660
73689
|
"alert-error",
|
|
73661
73690
|
"alert-critical-resolved"
|
|
73662
73691
|
];
|
|
73692
|
+
var DEVICE_ATTENTION = ["device-attention-required", "device-attention-resolved"];
|
|
73663
73693
|
var UPDATES = [
|
|
73664
73694
|
"addon-update-available",
|
|
73665
73695
|
"server-update-available",
|
|
@@ -73689,9 +73719,12 @@ var DEVICE_EVENTS = [
|
|
|
73689
73719
|
"stream-online",
|
|
73690
73720
|
"stream-offline",
|
|
73691
73721
|
"detection-blind",
|
|
73722
|
+
"motion-noisy",
|
|
73723
|
+
"motion-calm",
|
|
73692
73724
|
"recording-stalled",
|
|
73693
73725
|
"recording-healthy",
|
|
73694
73726
|
"recording-degraded",
|
|
73727
|
+
...DEVICE_ATTENTION,
|
|
73695
73728
|
...ALARM
|
|
73696
73729
|
];
|
|
73697
73730
|
/** Every kind a summary may speak about — the two summarisable families. */
|
|
@@ -73859,7 +73892,9 @@ var STATE_SUMMARY_VARS = [
|
|
|
73859
73892
|
[...RULE_TEXT],
|
|
73860
73893
|
[...RULE_TEXT],
|
|
73861
73894
|
[...RULE_TEXT],
|
|
73862
|
-
|
|
73895
|
+
[...RULE_TEXT],
|
|
73896
|
+
[...RULE_TEXT],
|
|
73897
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73863
73898
|
[...RULE_TEXT],
|
|
73864
73899
|
[...RULE_TEXT],
|
|
73865
73900
|
[...RULE_TEXT],
|
|
@@ -73881,11 +73916,11 @@ var STATE_SUMMARY_VARS = [
|
|
|
73881
73916
|
[...RULE_TEXT],
|
|
73882
73917
|
[...RULE_TEXT],
|
|
73883
73918
|
[...RULE_TEXT],
|
|
73919
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73884
73920
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73921
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73885
73922
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73886
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73887
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73888
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73923
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73889
73924
|
[...RULE_TEXT],
|
|
73890
73925
|
[...RULE_TEXT],
|
|
73891
73926
|
[...RULE_TEXT],
|
|
@@ -73961,6 +73996,15 @@ new Map([
|
|
|
73961
73996
|
snapshotLabel: "Tanks low or full now",
|
|
73962
73997
|
snapshotSection: "tanks"
|
|
73963
73998
|
},
|
|
73999
|
+
{
|
|
74000
|
+
id: "motion-noise",
|
|
74001
|
+
family: "device-events",
|
|
74002
|
+
label: "Motion without a subject (constant / calm again)",
|
|
74003
|
+
bad: ["motion-noisy"],
|
|
74004
|
+
recovery: ["motion-calm"],
|
|
74005
|
+
snapshotLabel: "Cameras with constant motion now",
|
|
74006
|
+
snapshotSection: null
|
|
74007
|
+
},
|
|
73964
74008
|
{
|
|
73965
74009
|
id: "recording-health",
|
|
73966
74010
|
family: "device-events",
|
|
@@ -73970,6 +74014,15 @@ new Map([
|
|
|
73970
74014
|
snapshotLabel: "Recordings stalled now",
|
|
73971
74015
|
snapshotSection: null
|
|
73972
74016
|
},
|
|
74017
|
+
{
|
|
74018
|
+
id: "device-attention",
|
|
74019
|
+
family: "device-events",
|
|
74020
|
+
label: "Device needs attention (raised / resolved)",
|
|
74021
|
+
bad: ["device-attention-required"],
|
|
74022
|
+
recovery: ["device-attention-resolved"],
|
|
74023
|
+
snapshotLabel: "Devices needing attention now",
|
|
74024
|
+
snapshotSection: null
|
|
74025
|
+
},
|
|
73973
74026
|
{
|
|
73974
74027
|
id: "node-connectivity",
|
|
73975
74028
|
family: "system",
|
package/dist/smtp.addon.mjs
CHANGED
|
@@ -34,7 +34,7 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
34
34
|
var __toCommonJS = (mod) => __hasOwnProp.call(mod, "module.exports") ? mod["module.exports"] : __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
35
35
|
var __require = /* @__PURE__ */ createRequire(import.meta.url);
|
|
36
36
|
//#endregion
|
|
37
|
-
//#region ../types/dist/event-category-
|
|
37
|
+
//#region ../types/dist/event-category-BfJwUd2S.mjs
|
|
38
38
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
39
39
|
EventCategory["SystemBoot"] = "system.boot";
|
|
40
40
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -351,6 +351,15 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
351
351
|
*/
|
|
352
352
|
EventCategory["PipelineDetectionBlind"] = "pipeline.detection-blind";
|
|
353
353
|
/**
|
|
354
|
+
* A camera's motion source has fired constantly with no subject for an hour
|
|
355
|
+
* (motion duty or session count over the bar, zero detections) — it is not
|
|
356
|
+
* blind, its motion zones or sensitivity want tuning (D907). Paired with
|
|
357
|
+
* {@link PipelineMotionCalm}.
|
|
358
|
+
*/
|
|
359
|
+
EventCategory["PipelineMotionNoisy"] = "pipeline.motion-noisy";
|
|
360
|
+
/** The recovery edge of {@link PipelineMotionNoisy}: the motion fell back, or a detection arrived. */
|
|
361
|
+
EventCategory["PipelineMotionCalm"] = "pipeline.motion-calm";
|
|
362
|
+
/**
|
|
354
363
|
* Per-camera pipeline config was mutated by the orchestrator
|
|
355
364
|
* (3-level settings change via `setAgentAddonDefaults` /
|
|
356
365
|
* `setCameraStepToggle` / `setCameraPipelineForAgent` or a
|
|
@@ -5457,7 +5466,7 @@ var ZodIssueCode = {
|
|
|
5457
5466
|
var ZodFirstPartyTypeKind;
|
|
5458
5467
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
5459
5468
|
//#endregion
|
|
5460
|
-
//#region ../types/dist/sleep-
|
|
5469
|
+
//#region ../types/dist/sleep-DJFUfKvA.mjs
|
|
5461
5470
|
/**
|
|
5462
5471
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
5463
5472
|
* window to float samples (D455).
|
|
@@ -7919,7 +7928,7 @@ var EntryDescriptorSchema = object({
|
|
|
7919
7928
|
/** JSON Schema of the entry body; `secret: true` marks a password field. */
|
|
7920
7929
|
fields: record(string(), unknown())
|
|
7921
7930
|
}).strict();
|
|
7922
|
-
/** What crosses the wire
|
|
7931
|
+
/** What crosses the wire from an addon: JSON only, no Zod. An unknown key is refused. */
|
|
7923
7932
|
var RecordKindDeclarationSchema = object({
|
|
7924
7933
|
database: _enum(RECORD_DATABASES).default("settings"),
|
|
7925
7934
|
class: _enum(RECORD_CLASSES),
|
|
@@ -7938,14 +7947,6 @@ var RecordKindDeclarationSchema = object({
|
|
|
7938
7947
|
secretPaths: array(string().min(1)).default([]),
|
|
7939
7948
|
/** The id key of each array that carries a secret (`{ headers: 'name' }`). */
|
|
7940
7949
|
secretArrayKeys: record(string(), string()).default({}),
|
|
7941
|
-
/**
|
|
7942
|
-
* RETIRED (D900): the legacy table a kind adopted from during the records
|
|
7943
|
-
* migration. Nothing declares it any more and nothing reads it; the schema
|
|
7944
|
-
* still ACCEPTS it because the catalog rows the migration wrote carry it
|
|
7945
|
-
* (an orphaned kind is never redeclared) and an addon built before the
|
|
7946
|
-
* removal still sends it. Never set it.
|
|
7947
|
-
*/
|
|
7948
|
-
adoptsFrom: string().min(1).optional(),
|
|
7949
7950
|
/** Kinds that must agree through `transact` sit in one file under one family name. */
|
|
7950
7951
|
transactFamily: string().min(1).optional(),
|
|
7951
7952
|
entry: EntryDescriptorSchema.optional()
|
|
@@ -12609,17 +12610,6 @@ object({
|
|
|
12609
12610
|
createdAt: number(),
|
|
12610
12611
|
updatedAt: number()
|
|
12611
12612
|
});
|
|
12612
|
-
object({
|
|
12613
|
-
id: string(),
|
|
12614
|
-
label: string(),
|
|
12615
|
-
isAdmin: boolean().default(false),
|
|
12616
|
-
allowedProviders: AllowedProviderSchema,
|
|
12617
|
-
allowedDevices: AllowedDevicesSchema,
|
|
12618
|
-
tokenHash: string(),
|
|
12619
|
-
tokenPrefix: string(),
|
|
12620
|
-
createdAt: number(),
|
|
12621
|
-
lastUsedAt: number().optional()
|
|
12622
|
-
});
|
|
12623
12613
|
object({
|
|
12624
12614
|
id: string(),
|
|
12625
12615
|
userId: string(),
|
|
@@ -16495,16 +16485,36 @@ var RecordKindStateSchema = _enum([
|
|
|
16495
16485
|
var DeclareKindResultSchema = object({
|
|
16496
16486
|
kindId: number().int(),
|
|
16497
16487
|
state: RecordKindStateSchema,
|
|
16498
|
-
createdIndexes: array(string())
|
|
16499
|
-
/**
|
|
16500
|
-
* RETIRED (D900): always `null`. It carried the records-migration boot guard;
|
|
16501
|
-
* it stays on the wire, null, because an addon built before the removal reads
|
|
16502
|
-
* an ABSENT field as "adoption pending" and refuses to start.
|
|
16503
|
-
*/
|
|
16504
|
-
adoptionPending: _null()
|
|
16488
|
+
createdIndexes: array(string())
|
|
16505
16489
|
});
|
|
16506
16490
|
/** Keychain refs a write released (the old marker is gone from the row): the owner deletes the values. */
|
|
16507
16491
|
var SecretRefsList = array(string());
|
|
16492
|
+
/**
|
|
16493
|
+
* One op of a `transact`: the single-row writes, each on a kind of the caller.
|
|
16494
|
+
* All ops of one call share ONE database file and ONE `transactFamily`.
|
|
16495
|
+
*/
|
|
16496
|
+
var RecordTransactOpSchema = discriminatedUnion("op", [
|
|
16497
|
+
object({
|
|
16498
|
+
op: literal("put"),
|
|
16499
|
+
kind: RecordKindNameSchema,
|
|
16500
|
+
record: RecordInputSchema,
|
|
16501
|
+
ifRev: number().int().min(0).optional()
|
|
16502
|
+
}),
|
|
16503
|
+
object({
|
|
16504
|
+
op: literal("patch"),
|
|
16505
|
+
kind: RecordKindNameSchema,
|
|
16506
|
+
id: RecordIdSchema,
|
|
16507
|
+
data: RecordBodySchema,
|
|
16508
|
+
at: number().int().nullable().optional(),
|
|
16509
|
+
expiresAt: number().int().nullable().optional(),
|
|
16510
|
+
ifRev: number().int().min(1).optional()
|
|
16511
|
+
}),
|
|
16512
|
+
object({
|
|
16513
|
+
op: literal("delete"),
|
|
16514
|
+
kind: RecordKindNameSchema,
|
|
16515
|
+
id: RecordIdSchema
|
|
16516
|
+
})
|
|
16517
|
+
]);
|
|
16508
16518
|
var RecordSecretRefsSchema = record(string(), record(string(), string()));
|
|
16509
16519
|
method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema) }), object({ kinds: record(string(), DeclareKindResultSchema) }), {
|
|
16510
16520
|
kind: "mutation",
|
|
@@ -16611,6 +16621,16 @@ method(object({ kinds: record(RecordKindNameSchema, RecordKindDeclarationSchema)
|
|
|
16611
16621
|
}), {
|
|
16612
16622
|
kind: "mutation",
|
|
16613
16623
|
auth: "admin"
|
|
16624
|
+
}), method(object({ ops: array(RecordTransactOpSchema).min(1).max(RECORD_BATCH_MAX) }), object({
|
|
16625
|
+
results: array(object({
|
|
16626
|
+
rev: number().int().nullable(),
|
|
16627
|
+
deleted: boolean()
|
|
16628
|
+
})),
|
|
16629
|
+
releasedRefs: SecretRefsList,
|
|
16630
|
+
secretRefs: SecretRefsList
|
|
16631
|
+
}), {
|
|
16632
|
+
kind: "mutation",
|
|
16633
|
+
auth: "admin"
|
|
16614
16634
|
}), method(object({
|
|
16615
16635
|
deviceId: number().int(),
|
|
16616
16636
|
kinds: array(RecordKindNameSchema).optional()
|
|
@@ -41969,9 +41989,13 @@ var NcSystemEventKindSchema = _enum([
|
|
|
41969
41989
|
"node-updating",
|
|
41970
41990
|
"node-inference-unavailable",
|
|
41971
41991
|
"detection-blind",
|
|
41992
|
+
"motion-noisy",
|
|
41993
|
+
"motion-calm",
|
|
41972
41994
|
"recording-stalled",
|
|
41973
41995
|
"recording-healthy",
|
|
41974
41996
|
"recording-degraded",
|
|
41997
|
+
"device-attention-required",
|
|
41998
|
+
"device-attention-resolved",
|
|
41975
41999
|
"storage-location-low",
|
|
41976
42000
|
"storage-location-critical",
|
|
41977
42001
|
"storage-location-ok",
|
|
@@ -54441,6 +54465,16 @@ object({
|
|
|
54441
54465
|
powerState: string().nullable(),
|
|
54442
54466
|
saltLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
54443
54467
|
rinseAidLevel: DishwasherConsumableLevelSchema.nullable(),
|
|
54468
|
+
/**
|
|
54469
|
+
* True while the appliance asks for its filter to be cleaned (smart-filter, filter-system or
|
|
54470
|
+
* combined care-and-filter reminder raised); false when every such reminder reads clear; null
|
|
54471
|
+
* when none is reported. A cleared reminder is not an unknown one.
|
|
54472
|
+
*/
|
|
54473
|
+
filterCleaningDue: boolean().nullable(),
|
|
54474
|
+
/** True while the machine-care (descaling / cleaning-program) reminder is raised; false when clear; null when not reported. */
|
|
54475
|
+
machineCareDue: boolean().nullable(),
|
|
54476
|
+
/** Program runs left before the machine-care reminder is due; null when the appliance does not say. */
|
|
54477
|
+
machineCareRemainingRuns: number().int().nonnegative().nullable(),
|
|
54444
54478
|
/** Option states: null when the appliance does not expose the option or has not said. */
|
|
54445
54479
|
halfLoad: boolean().nullable(),
|
|
54446
54480
|
hygienePlus: boolean().nullable(),
|
|
@@ -61058,16 +61092,6 @@ var UpdateUserInputSchema = object({
|
|
|
61058
61092
|
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61059
61093
|
scopes: array(TokenScopeSchema).optional()
|
|
61060
61094
|
});
|
|
61061
|
-
var ApiKeySummarySchema = object({
|
|
61062
|
-
id: string(),
|
|
61063
|
-
label: string(),
|
|
61064
|
-
isAdmin: boolean().default(false),
|
|
61065
|
-
allowedProviders: union([array(string()), literal("*")]).optional(),
|
|
61066
|
-
allowedDevices: record(string(), union([array(string()), literal("*")])).optional(),
|
|
61067
|
-
tokenPrefix: string(),
|
|
61068
|
-
createdAt: number(),
|
|
61069
|
-
lastUsedAt: number().optional()
|
|
61070
|
-
});
|
|
61071
61095
|
var OauthSessionSummarySchema = object({
|
|
61072
61096
|
id: string(),
|
|
61073
61097
|
userId: string(),
|
|
@@ -61089,8 +61113,7 @@ var TotpStatusSchema = object({
|
|
|
61089
61113
|
confirmedAt: number().nullable()
|
|
61090
61114
|
});
|
|
61091
61115
|
/**
|
|
61092
|
-
* user-management — singleton capability for user accounts
|
|
61093
|
-
* legacy API-key rows.
|
|
61116
|
+
* user-management — singleton capability for user accounts.
|
|
61094
61117
|
*
|
|
61095
61118
|
* v2 model: every method gated by `auth: 'admin'`. Admin-only delegation
|
|
61096
61119
|
* — the subset check on `setUserScopes` is moot
|
|
@@ -61146,10 +61169,6 @@ method(_void(), array(UserSummarySchema), { auth: "admin" }), method(CreateUserI
|
|
|
61146
61169
|
}), UserSummarySchema.extend({ passwordHash: string() }).nullable(), {
|
|
61147
61170
|
kind: "mutation",
|
|
61148
61171
|
access: "view"
|
|
61149
|
-
}), method(_void(), array(ApiKeySummarySchema), { auth: "admin" }), method(object({ id: string() }), object({ success: literal(true) }), {
|
|
61150
|
-
kind: "mutation",
|
|
61151
|
-
auth: "admin",
|
|
61152
|
-
access: "delete"
|
|
61153
61172
|
}), method(object({ userId: string() }), TotpSetupResultSchema, {
|
|
61154
61173
|
kind: "mutation",
|
|
61155
61174
|
auth: "admin",
|
|
@@ -68662,6 +68681,12 @@ Object.freeze({
|
|
|
68662
68681
|
addonId: null,
|
|
68663
68682
|
access: "view"
|
|
68664
68683
|
},
|
|
68684
|
+
"records.transact": {
|
|
68685
|
+
capName: "records",
|
|
68686
|
+
capScope: "system",
|
|
68687
|
+
addonId: null,
|
|
68688
|
+
access: "create"
|
|
68689
|
+
},
|
|
68665
68690
|
"sceneMonitor.captureReference": {
|
|
68666
68691
|
capName: "scene-monitor",
|
|
68667
68692
|
capScope: "device",
|
|
@@ -69994,12 +70019,6 @@ Object.freeze({
|
|
|
69994
70019
|
addonId: null,
|
|
69995
70020
|
access: "view"
|
|
69996
70021
|
},
|
|
69997
|
-
"userManagement.listApiKeys": {
|
|
69998
|
-
capName: "user-management",
|
|
69999
|
-
capScope: "system",
|
|
70000
|
-
addonId: null,
|
|
70001
|
-
access: "view"
|
|
70002
|
-
},
|
|
70003
70022
|
"userManagement.listExternalIdentities": {
|
|
70004
70023
|
capName: "user-management",
|
|
70005
70024
|
capScope: "system",
|
|
@@ -70054,12 +70073,6 @@ Object.freeze({
|
|
|
70054
70073
|
addonId: null,
|
|
70055
70074
|
access: "create"
|
|
70056
70075
|
},
|
|
70057
|
-
"userManagement.revokeApiKey": {
|
|
70058
|
-
capName: "user-management",
|
|
70059
|
-
capScope: "system",
|
|
70060
|
-
addonId: null,
|
|
70061
|
-
access: "delete"
|
|
70062
|
-
},
|
|
70063
70076
|
"userManagement.revokeOauthSession": {
|
|
70064
70077
|
capName: "user-management",
|
|
70065
70078
|
capScope: "system",
|
|
@@ -73424,9 +73437,13 @@ new Map(Object.entries({
|
|
|
73424
73437
|
"stream-online": "device-events",
|
|
73425
73438
|
"stream-offline": "device-events",
|
|
73426
73439
|
"detection-blind": "device-events",
|
|
73440
|
+
"motion-noisy": "device-events",
|
|
73441
|
+
"motion-calm": "device-events",
|
|
73427
73442
|
"recording-stalled": "device-events",
|
|
73428
73443
|
"recording-healthy": "device-events",
|
|
73429
73444
|
"recording-degraded": "device-events",
|
|
73445
|
+
"device-attention-required": "device-events",
|
|
73446
|
+
"device-attention-resolved": "device-events",
|
|
73430
73447
|
"node-online": "system",
|
|
73431
73448
|
"node-offline": "system",
|
|
73432
73449
|
"node-restarting": "system",
|
|
@@ -73509,6 +73526,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
73509
73526
|
label: "Detecting nothing",
|
|
73510
73527
|
kinds: ["detection-blind"]
|
|
73511
73528
|
},
|
|
73529
|
+
{
|
|
73530
|
+
id: "motion-noise",
|
|
73531
|
+
family: "device-events",
|
|
73532
|
+
label: "Motion without a subject",
|
|
73533
|
+
kinds: ["motion-noisy", "motion-calm"]
|
|
73534
|
+
},
|
|
73512
73535
|
{
|
|
73513
73536
|
id: "recording",
|
|
73514
73537
|
family: "device-events",
|
|
@@ -73519,6 +73542,12 @@ var NC_SYSTEM_EVENT_KIND_GROUP_SPECS = [
|
|
|
73519
73542
|
"recording-degraded"
|
|
73520
73543
|
]
|
|
73521
73544
|
},
|
|
73545
|
+
{
|
|
73546
|
+
id: "device-attention",
|
|
73547
|
+
family: "device-events",
|
|
73548
|
+
label: "Needs attention",
|
|
73549
|
+
kinds: ["device-attention-required", "device-attention-resolved"]
|
|
73550
|
+
},
|
|
73522
73551
|
{
|
|
73523
73552
|
id: "nodes",
|
|
73524
73553
|
family: "system",
|
|
@@ -73658,6 +73687,7 @@ var ALERT_EPISODE = [
|
|
|
73658
73687
|
"alert-error",
|
|
73659
73688
|
"alert-critical-resolved"
|
|
73660
73689
|
];
|
|
73690
|
+
var DEVICE_ATTENTION = ["device-attention-required", "device-attention-resolved"];
|
|
73661
73691
|
var UPDATES = [
|
|
73662
73692
|
"addon-update-available",
|
|
73663
73693
|
"server-update-available",
|
|
@@ -73687,9 +73717,12 @@ var DEVICE_EVENTS = [
|
|
|
73687
73717
|
"stream-online",
|
|
73688
73718
|
"stream-offline",
|
|
73689
73719
|
"detection-blind",
|
|
73720
|
+
"motion-noisy",
|
|
73721
|
+
"motion-calm",
|
|
73690
73722
|
"recording-stalled",
|
|
73691
73723
|
"recording-healthy",
|
|
73692
73724
|
"recording-degraded",
|
|
73725
|
+
...DEVICE_ATTENTION,
|
|
73693
73726
|
...ALARM
|
|
73694
73727
|
];
|
|
73695
73728
|
/** Every kind a summary may speak about — the two summarisable families. */
|
|
@@ -73857,7 +73890,9 @@ var STATE_SUMMARY_VARS = [
|
|
|
73857
73890
|
[...RULE_TEXT],
|
|
73858
73891
|
[...RULE_TEXT],
|
|
73859
73892
|
[...RULE_TEXT],
|
|
73860
|
-
|
|
73893
|
+
[...RULE_TEXT],
|
|
73894
|
+
[...RULE_TEXT],
|
|
73895
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73861
73896
|
[...RULE_TEXT],
|
|
73862
73897
|
[...RULE_TEXT],
|
|
73863
73898
|
[...RULE_TEXT],
|
|
@@ -73879,11 +73914,11 @@ var STATE_SUMMARY_VARS = [
|
|
|
73879
73914
|
[...RULE_TEXT],
|
|
73880
73915
|
[...RULE_TEXT],
|
|
73881
73916
|
[...RULE_TEXT],
|
|
73917
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73882
73918
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73919
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73883
73920
|
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73884
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73885
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73886
|
-
([...RULE_TEXT], [...ALERT_EPISODE]),
|
|
73921
|
+
([...RULE_TEXT], [...DEVICE_ATTENTION, ...ALERT_EPISODE]),
|
|
73887
73922
|
[...RULE_TEXT],
|
|
73888
73923
|
[...RULE_TEXT],
|
|
73889
73924
|
[...RULE_TEXT],
|
|
@@ -73959,6 +73994,15 @@ new Map([
|
|
|
73959
73994
|
snapshotLabel: "Tanks low or full now",
|
|
73960
73995
|
snapshotSection: "tanks"
|
|
73961
73996
|
},
|
|
73997
|
+
{
|
|
73998
|
+
id: "motion-noise",
|
|
73999
|
+
family: "device-events",
|
|
74000
|
+
label: "Motion without a subject (constant / calm again)",
|
|
74001
|
+
bad: ["motion-noisy"],
|
|
74002
|
+
recovery: ["motion-calm"],
|
|
74003
|
+
snapshotLabel: "Cameras with constant motion now",
|
|
74004
|
+
snapshotSection: null
|
|
74005
|
+
},
|
|
73962
74006
|
{
|
|
73963
74007
|
id: "recording-health",
|
|
73964
74008
|
family: "device-events",
|
|
@@ -73968,6 +74012,15 @@ new Map([
|
|
|
73968
74012
|
snapshotLabel: "Recordings stalled now",
|
|
73969
74013
|
snapshotSection: null
|
|
73970
74014
|
},
|
|
74015
|
+
{
|
|
74016
|
+
id: "device-attention",
|
|
74017
|
+
family: "device-events",
|
|
74018
|
+
label: "Device needs attention (raised / resolved)",
|
|
74019
|
+
bad: ["device-attention-required"],
|
|
74020
|
+
recovery: ["device-attention-resolved"],
|
|
74021
|
+
snapshotLabel: "Devices needing attention now",
|
|
74022
|
+
snapshotSection: null
|
|
74023
|
+
},
|
|
73971
74024
|
{
|
|
73972
74025
|
id: "node-connectivity",
|
|
73973
74026
|
family: "system",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-smtp-nodemailer",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.137",
|
|
4
4
|
"description": "SMTP email provider addon for CamStack — wraps `nodemailer` and registers a `smtp-provider` cap collection entry. Used by notifier addons.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|