@camstack/system 1.2.464 → 1.2.465
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-utils.mjs +1 -1
- package/dist/{agent-https-B9gbXoJI.mjs → agent-https-CPJ7FTs0.mjs} +1 -1
- package/dist/{agent-https-DhFIbEwN.js → agent-https-CzA1AmyI.js} +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +4 -4
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +5 -5
- package/dist/builtins/alerts/alerts.addon.d.ts +7 -0
- package/dist/builtins/alerts/alerts.addon.js +65 -2
- package/dist/builtins/alerts/alerts.addon.mjs +65 -2
- package/dist/builtins/autotrack/index.js +1 -1
- package/dist/builtins/autotrack/index.mjs +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +2 -2
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +5 -5
- package/dist/builtins/calendars/calendars.addon.js +1 -1
- package/dist/builtins/calendars/calendars.addon.mjs +1 -1
- package/dist/builtins/camera-grid/index.js +1 -1
- package/dist/builtins/camera-grid/index.mjs +1 -1
- package/dist/builtins/composer/composer.addon.js +2 -2
- package/dist/builtins/composer/composer.addon.mjs +2 -2
- package/dist/builtins/console-logging/index.js +1 -1
- package/dist/builtins/console-logging/index.mjs +1 -1
- package/dist/builtins/core-blocks/core-blocks.addon.js +2 -2
- package/dist/builtins/core-blocks/core-blocks.addon.mjs +2 -2
- package/dist/builtins/device-history/device-history.addon.js +1 -1
- package/dist/builtins/device-history/device-history.addon.mjs +1 -1
- package/dist/builtins/device-manager/device-manager.addon.js +1 -1
- package/dist/builtins/device-manager/device-manager.addon.mjs +1 -1
- package/dist/builtins/hub-forwarder/index.js +1 -1
- package/dist/builtins/hub-forwarder/index.mjs +1 -1
- package/dist/builtins/keychain/index.js +3 -3
- package/dist/builtins/keychain/index.mjs +3 -3
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.js +1 -1
- package/dist/builtins/liveness-monitor/liveness-monitor.addon.mjs +1 -1
- package/dist/builtins/local-auth/local-auth.addon.js +2 -2
- package/dist/builtins/local-auth/local-auth.addon.mjs +5 -5
- package/dist/builtins/local-network/local-network.addon.js +2 -2
- package/dist/builtins/local-network/local-network.addon.mjs +2 -2
- package/dist/builtins/loki-logging/index.js +1 -1
- package/dist/builtins/loki-logging/index.mjs +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.js +1 -1
- package/dist/builtins/native-metrics/native-metrics.addon.mjs +10 -10
- package/dist/builtins/platform-probe/index.js +1 -1
- package/dist/builtins/platform-probe/index.mjs +8 -8
- package/dist/builtins/record-entries/index.js +1 -1
- package/dist/builtins/record-entries/index.mjs +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.js +1 -1
- package/dist/builtins/remote-access-orchestrator/remote-access-orchestrator.addon.mjs +1 -1
- package/dist/builtins/snapshot/index.js +1 -1
- package/dist/builtins/snapshot/index.mjs +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +20 -20
- package/dist/builtins/sqlite-storage/index.js +1 -1
- package/dist/builtins/sqlite-storage/index.mjs +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +2 -2
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +2 -2
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.js +1 -1
- package/dist/builtins/storage-orchestrator/storage-orchestrator.addon.mjs +1 -1
- package/dist/builtins/system-config/system-config.addon.js +3 -3
- package/dist/builtins/system-config/system-config.addon.mjs +115 -115
- package/dist/builtins/winston-logging/index.js +1 -1
- package/dist/builtins/winston-logging/index.mjs +1 -1
- package/dist/{composition-sources-oXvmbMHX.js → composition-sources-BG0E76VO.js} +1 -1
- package/dist/{composition-sources-CGtooHSL.mjs → composition-sources-CqRsEC0a.mjs} +1 -1
- package/dist/{constants-5mrGZxwS.js → constants-BYJ4ni7h.js} +1 -1
- package/dist/{constants-CdutnpL9.mjs → constants-CmGw1liQ.mjs} +1 -1
- package/dist/{coral-accelerators-D_S1Fo5h.mjs → coral-accelerators-Qhn5TOYZ.mjs} +5 -5
- package/dist/{custom-action-registry-BGYDjTqY.mjs → custom-action-registry-DZSCLBuT.mjs} +37 -37
- package/dist/{device-ca-B3xUzps7.js → device-ca-B-Txwl4W.js} +1 -1
- package/dist/{device-ca-DZHKlZlD.mjs → device-ca-CQcB6yfj.mjs} +1 -1
- package/dist/{dist-C2OBCa-A.mjs → dist-CR7idLer.mjs} +125 -2
- package/dist/{dist-D9aw_d0G.js → dist-Dwi4JA96.js} +125 -2
- package/dist/file-host-worker.js +1 -1
- package/dist/file-host-worker.mjs +1 -1
- package/dist/{hub-mdns-ciao-CFlhVKK6.js → hub-mdns-ciao-3qdHbtyp.js} +2 -2
- package/dist/{hub-mdns-ciao-Bm09NrMS.mjs → hub-mdns-ciao-BlLwL65g.mjs} +2 -2
- package/dist/index.js +7 -7
- package/dist/index.mjs +225 -225
- package/dist/{restore-archive-D6sS7Gt2.mjs → restore-archive-BYL7E5af.mjs} +94 -94
- package/dist/{restore-archive-6zkRREHO.js → restore-archive-D1uxP8Eb.js} +1 -1
- package/dist/{wal-maintenance-Dg6IzSgz.mjs → wal-maintenance-BDQT7TIi.mjs} +0 -0
- package/dist/{wal-maintenance-jXcOxm2T.js → wal-maintenance-BQlvAduo.js} +0 -0
- package/package.json +1 -1
package/dist/addon-utils.mjs
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { C as isModelDownloaded, S as isModelDownloadHttpError, _ as downloadFile, a as startEventLoopStallMonitor, f as ModelDownloadService, g as deleteModelFromDisk, h as collectModelFiles, i as attributeStall, l as parseRangeHeader, m as adoptModelRevisions, n as STALL_REPORT_MS, o as createFileDataPlaneHandler, p as ModelDownloadHttpError, r as STALL_TICK_MS, s as contentTypeFor, t as CustomActionRegistry, w as resolveFormatRevision, x as getModelFilePath, y as ensureModel } from "./custom-action-registry-
|
|
1
|
+
import { C as isModelDownloaded, S as isModelDownloadHttpError, _ as downloadFile, a as startEventLoopStallMonitor, f as ModelDownloadService, g as deleteModelFromDisk, h as collectModelFiles, i as attributeStall, l as parseRangeHeader, m as adoptModelRevisions, n as STALL_REPORT_MS, o as createFileDataPlaneHandler, p as ModelDownloadHttpError, r as STALL_TICK_MS, s as contentTypeFor, t as CustomActionRegistry, w as resolveFormatRevision, x as getModelFilePath, y as ensureModel } from "./custom-action-registry-DZSCLBuT.mjs";
|
|
2
2
|
import { i as renderCourtesyOverlayJpeg, n as courtesyCacheKey, r as renderCourtesyJpeg, t as COURTESY_DEFAULT_WIDTH } from "./snapshot-courtesy-CyFs1M3I.mjs";
|
|
3
3
|
export { COURTESY_DEFAULT_WIDTH, CustomActionRegistry, ModelDownloadHttpError, ModelDownloadService, STALL_REPORT_MS, STALL_TICK_MS, adoptModelRevisions, attributeStall, collectModelFiles, contentTypeFor, courtesyCacheKey, createFileDataPlaneHandler, deleteModelFromDisk, downloadFile, ensureModel, getModelFilePath, isModelDownloadHttpError, isModelDownloaded, parseRangeHeader, renderCourtesyJpeg, renderCourtesyOverlayJpeg, resolveFormatRevision, startEventLoopStallMonitor };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ui as defineRecordKinds } from "./dist-
|
|
1
|
+
import { Ui as defineRecordKinds } from "./dist-CR7idLer.mjs";
|
|
2
2
|
import { S as backdatedNotBefore, _ as NameConstraints, a as KeyUsageFlags, c as Pkcs10CertificateRequest, d as SubjectKeyIdentifierExtension, f as X509Certificate$1, g as GeneralSubtrees, h as GeneralSubtree, i as Extension, l as Pkcs10CertificateRequestGenerator, m as cryptoProvider, n as BasicConstraintsExtension, o as KeyUsagesExtension, p as X509CertificateGenerator, r as ExtendedKeyUsageExtension, s as PemConverter, t as AuthorityKeyIdentifierExtension, u as SubjectAlternativeNameExtension, v as GeneralName, x as AsnConvert } from "./x509.es-DK__ETIe.mjs";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
import { X509Certificate, createHash, createPrivateKey, randomBytes, webcrypto } from "node:crypto";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const require_chunk = require("./chunk-Cek0wNdY.js");
|
|
2
|
-
const require_dist = require("./dist-
|
|
2
|
+
const require_dist = require("./dist-Dwi4JA96.js");
|
|
3
3
|
const require_x509_es = require("./x509.es-C4cOo48M.js");
|
|
4
4
|
let zod = require("zod");
|
|
5
5
|
let node_crypto = require("node:crypto");
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
|
|
8
8
|
let node_crypto = require("node:crypto");
|
|
9
9
|
let node_path = require("node:path");
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { $r as errMsg, Ca as EventCategory, _t as addonPagesCapability, ei as BaseAddon } from "../../dist-
|
|
1
|
+
import { $r as errMsg, Ca as EventCategory, _t as addonPagesCapability, ei as BaseAddon } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
|
|
3
3
|
import { createHash, randomUUID } from "node:crypto";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
5
|
-
import * as fs from "node:fs";
|
|
5
|
+
import * as fs$1 from "node:fs";
|
|
6
6
|
//#region src/builtins/addon-pages-aggregator/dedupe-pages.ts
|
|
7
7
|
/** Stable identity for an addon page, independent of which node reported it. */
|
|
8
8
|
function pageKey(info) {
|
|
@@ -211,11 +211,11 @@ var AddonPagesAggregatorAddon = class extends BaseAddon {
|
|
|
211
211
|
const bundlePath = this.resolveBundlePath(addonId, bundle);
|
|
212
212
|
if (bundlePath === null) return `/api/addon-pages/${addonId}/${bundle}?v=${Math.floor(Date.now())}`;
|
|
213
213
|
try {
|
|
214
|
-
const stat = fs.statSync(bundlePath);
|
|
214
|
+
const stat = fs$1.statSync(bundlePath);
|
|
215
215
|
const cacheKey = `${bundlePath}:${stat.size}:${stat.mtimeMs}`;
|
|
216
216
|
let v = this.bundleHashCache.get(cacheKey);
|
|
217
217
|
if (v === void 0) {
|
|
218
|
-
v = createHash("sha1").update(fs.readFileSync(bundlePath)).digest("hex").slice(0, 12);
|
|
218
|
+
v = createHash("sha1").update(fs$1.readFileSync(bundlePath)).digest("hex").slice(0, 12);
|
|
219
219
|
this.bundleHashCache.set(cacheKey, v);
|
|
220
220
|
}
|
|
221
221
|
return `/api/addon-pages/${addonId}/${bundle}?v=${v}`;
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
|
|
8
8
|
let node_crypto = require("node:crypto");
|
|
9
9
|
let node_path = require("node:path");
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { $r as errMsg, Ca as EventCategory, ei as BaseAddon, yt as addonWidgetsCapability } from "../../dist-
|
|
1
|
+
import { $r as errMsg, Ca as EventCategory, ei as BaseAddon, yt as addonWidgetsCapability } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
|
|
3
3
|
import { createHash, randomUUID } from "node:crypto";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
5
|
-
import * as fs from "node:fs";
|
|
5
|
+
import * as fs$1 from "node:fs";
|
|
6
6
|
//#region src/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.ts
|
|
7
7
|
/**
|
|
8
8
|
* Addon Widgets Aggregator — hub-local builtin that owns the singleton
|
|
@@ -204,9 +204,9 @@ var AddonWidgetsAggregatorAddon = class extends BaseAddon {
|
|
|
204
204
|
if (entryPath === null) return String(Math.floor(Date.now()));
|
|
205
205
|
try {
|
|
206
206
|
const dir = path$1.dirname(entryPath);
|
|
207
|
-
const files = fs.readdirSync(dir).filter((f) => fs.statSync(path$1.join(dir, f)).isFile()).sort();
|
|
207
|
+
const files = fs$1.readdirSync(dir).filter((f) => fs$1.statSync(path$1.join(dir, f)).isFile()).sort();
|
|
208
208
|
const cacheKey = `${dir}#${files.map((f) => {
|
|
209
|
-
const s = fs.statSync(path$1.join(dir, f));
|
|
209
|
+
const s = fs$1.statSync(path$1.join(dir, f));
|
|
210
210
|
return `${f}:${s.size}:${s.mtimeMs}`;
|
|
211
211
|
}).join("|")}`;
|
|
212
212
|
const cached = this.bundleHashCache.get(cacheKey);
|
|
@@ -214,7 +214,7 @@ var AddonWidgetsAggregatorAddon = class extends BaseAddon {
|
|
|
214
214
|
const hash = createHash("sha1");
|
|
215
215
|
for (const f of files) {
|
|
216
216
|
hash.update(f);
|
|
217
|
-
hash.update(fs.readFileSync(path$1.join(dir, f)));
|
|
217
|
+
hash.update(fs$1.readFileSync(path$1.join(dir, f)));
|
|
218
218
|
}
|
|
219
219
|
const digest = hash.digest("hex").slice(0, 12);
|
|
220
220
|
this.bundleHashCache.set(cacheKey, digest);
|
|
@@ -94,6 +94,13 @@ export declare class AlertCenterAddon extends BaseAddon<AlertCenterConfig> {
|
|
|
94
94
|
* must not ring the bell (same gate NC uses). One card per DEVICE (D883).
|
|
95
95
|
*/
|
|
96
96
|
private handleStreamOffline;
|
|
97
|
+
/**
|
|
98
|
+
* A notification rule that cannot work (D905) — visible in-app even when no
|
|
99
|
+
* rule listens for `rule-broken`. One card per RULE; a new reason updates it.
|
|
100
|
+
*/
|
|
101
|
+
private handleRuleBroken;
|
|
102
|
+
/** The rule works again — drop its broken-rule card. */
|
|
103
|
+
private handleRuleRepaired;
|
|
97
104
|
/** Stream online after an outage — drop the matching offline card. */
|
|
98
105
|
private handleStreamOnline;
|
|
99
106
|
/**
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
|
|
8
8
|
//#region src/builtins/alerts/alert-episode-policy.ts
|
|
9
9
|
/**
|
|
@@ -509,6 +509,10 @@ var CATEGORY_MAPPINGS = {
|
|
|
509
509
|
severity: "warning",
|
|
510
510
|
titleTemplate: "Stream offline"
|
|
511
511
|
},
|
|
512
|
+
"notification.rule-broken": {
|
|
513
|
+
severity: "warning",
|
|
514
|
+
titleTemplate: "Notification rule broken"
|
|
515
|
+
},
|
|
512
516
|
"backup.restored": {
|
|
513
517
|
severity: "info",
|
|
514
518
|
titleTemplate: "Backup restored"
|
|
@@ -527,7 +531,8 @@ var SILENT_TRACKED_CATEGORIES = [
|
|
|
527
531
|
"process.state-changed",
|
|
528
532
|
"addon.load-recovered",
|
|
529
533
|
"system.liveness-recovered",
|
|
530
|
-
"stream.online"
|
|
534
|
+
"stream.online",
|
|
535
|
+
"notification.rule-repaired"
|
|
531
536
|
];
|
|
532
537
|
/** The `stream.offline` reasons that are an outage (D883) — mirrors the broker's `isStreamOutageReason`. */
|
|
533
538
|
var STREAM_OUTAGE_REASONS = [
|
|
@@ -794,6 +799,14 @@ var AlertCenterAddon = class extends require_dist.BaseAddon {
|
|
|
794
799
|
await this.handleStreamOnline(event);
|
|
795
800
|
return;
|
|
796
801
|
}
|
|
802
|
+
if (category === require_dist.EventCategory.NotificationRuleBroken) {
|
|
803
|
+
await this.handleRuleBroken(event);
|
|
804
|
+
return;
|
|
805
|
+
}
|
|
806
|
+
if (category === require_dist.EventCategory.NotificationRuleRepaired) {
|
|
807
|
+
await this.handleRuleRepaired(event);
|
|
808
|
+
return;
|
|
809
|
+
}
|
|
797
810
|
const mapping = CATEGORY_MAPPINGS[category];
|
|
798
811
|
if (!mapping) return;
|
|
799
812
|
if (category === "addon.updated") {
|
|
@@ -1208,6 +1221,56 @@ var AlertCenterAddon = class extends require_dist.BaseAddon {
|
|
|
1208
1221
|
};
|
|
1209
1222
|
await this.emitAlert(alert);
|
|
1210
1223
|
}
|
|
1224
|
+
/**
|
|
1225
|
+
* A notification rule that cannot work (D905) — visible in-app even when no
|
|
1226
|
+
* rule listens for `rule-broken`. One card per RULE; a new reason updates it.
|
|
1227
|
+
*/
|
|
1228
|
+
async handleRuleBroken(event) {
|
|
1229
|
+
const ruleId = event.data["ruleId"];
|
|
1230
|
+
if (typeof ruleId !== "string" || ruleId.length === 0) return;
|
|
1231
|
+
const ruleName = typeof event.data["ruleName"] === "string" ? event.data["ruleName"] : ruleId;
|
|
1232
|
+
const reason = typeof event.data["reason"] === "string" ? event.data["reason"] : "unknown";
|
|
1233
|
+
const listed = event.data["offendingIds"];
|
|
1234
|
+
const offendingIds = Array.isArray(listed) ? listed.filter((id) => typeof id === "string") : [];
|
|
1235
|
+
const what = reason === "unparseable" ? "cannot be loaded and sends nothing — open it and save it again" : reason === "device-deleted" ? `still names a deleted device (${offendingIds.join(", ")}) and was switched off` : reason === "target-deleted" ? `still sends to a deleted destination (${offendingIds.join(", ")}) and was switched off` : "cannot work";
|
|
1236
|
+
const alert = {
|
|
1237
|
+
id: `nc-rule-broken:${ruleId}`,
|
|
1238
|
+
category: require_dist.EventCategory.NotificationRuleBroken,
|
|
1239
|
+
severity: "warning",
|
|
1240
|
+
title: "Notification rule broken",
|
|
1241
|
+
message: `Rule "${ruleName}" ${what}.`,
|
|
1242
|
+
status: "active",
|
|
1243
|
+
read: false,
|
|
1244
|
+
createdAt: Date.now(),
|
|
1245
|
+
updatedAt: Date.now(),
|
|
1246
|
+
source: {
|
|
1247
|
+
type: "addon",
|
|
1248
|
+
id: "notification-center"
|
|
1249
|
+
},
|
|
1250
|
+
metadata: {
|
|
1251
|
+
ruleId,
|
|
1252
|
+
ruleName,
|
|
1253
|
+
reason,
|
|
1254
|
+
offendingIds,
|
|
1255
|
+
reasons: event.data["reasons"]
|
|
1256
|
+
}
|
|
1257
|
+
};
|
|
1258
|
+
await this.emitAlert(alert);
|
|
1259
|
+
}
|
|
1260
|
+
/** The rule works again — drop its broken-rule card. */
|
|
1261
|
+
async handleRuleRepaired(event) {
|
|
1262
|
+
const ruleId = event.data["ruleId"];
|
|
1263
|
+
if (typeof ruleId !== "string" || ruleId.length === 0) return;
|
|
1264
|
+
const stableId = `nc-rule-broken:${ruleId}`;
|
|
1265
|
+
try {
|
|
1266
|
+
await this.dismiss(stableId);
|
|
1267
|
+
} catch (err) {
|
|
1268
|
+
this.ctx.logger?.debug("NotificationRuleRepaired: dismiss failed (likely already dismissed)", { meta: {
|
|
1269
|
+
stableId,
|
|
1270
|
+
error: require_dist.errMsg(err)
|
|
1271
|
+
} });
|
|
1272
|
+
}
|
|
1273
|
+
}
|
|
1211
1274
|
/** Stream online after an outage — drop the matching offline card. */
|
|
1212
1275
|
async handleStreamOnline(event) {
|
|
1213
1276
|
const deviceId = event.data["deviceId"];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $r as errMsg, Bi as createEvent, Ca as EventCategory, St as alertsCapability, Ui as defineRecordKinds, bn as isAlertEpisodeSeverity, bt as alertEpisodeId, ei as BaseAddon, i as AlertSchema, xt as alertEpisodePayload, yn as isAlertEpisodeOpen } from "../../dist-
|
|
1
|
+
import { $r as errMsg, Bi as createEvent, Ca as EventCategory, St as alertsCapability, Ui as defineRecordKinds, bn as isAlertEpisodeSeverity, bt as alertEpisodeId, ei as BaseAddon, i as AlertSchema, xt as alertEpisodePayload, yn as isAlertEpisodeOpen } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
|
|
3
3
|
//#region src/builtins/alerts/alert-episode-policy.ts
|
|
4
4
|
/**
|
|
@@ -503,6 +503,10 @@ var CATEGORY_MAPPINGS = {
|
|
|
503
503
|
severity: "warning",
|
|
504
504
|
titleTemplate: "Stream offline"
|
|
505
505
|
},
|
|
506
|
+
"notification.rule-broken": {
|
|
507
|
+
severity: "warning",
|
|
508
|
+
titleTemplate: "Notification rule broken"
|
|
509
|
+
},
|
|
506
510
|
"backup.restored": {
|
|
507
511
|
severity: "info",
|
|
508
512
|
titleTemplate: "Backup restored"
|
|
@@ -521,7 +525,8 @@ var SILENT_TRACKED_CATEGORIES = [
|
|
|
521
525
|
"process.state-changed",
|
|
522
526
|
"addon.load-recovered",
|
|
523
527
|
"system.liveness-recovered",
|
|
524
|
-
"stream.online"
|
|
528
|
+
"stream.online",
|
|
529
|
+
"notification.rule-repaired"
|
|
525
530
|
];
|
|
526
531
|
/** The `stream.offline` reasons that are an outage (D883) — mirrors the broker's `isStreamOutageReason`. */
|
|
527
532
|
var STREAM_OUTAGE_REASONS = [
|
|
@@ -788,6 +793,14 @@ var AlertCenterAddon = class extends BaseAddon {
|
|
|
788
793
|
await this.handleStreamOnline(event);
|
|
789
794
|
return;
|
|
790
795
|
}
|
|
796
|
+
if (category === EventCategory.NotificationRuleBroken) {
|
|
797
|
+
await this.handleRuleBroken(event);
|
|
798
|
+
return;
|
|
799
|
+
}
|
|
800
|
+
if (category === EventCategory.NotificationRuleRepaired) {
|
|
801
|
+
await this.handleRuleRepaired(event);
|
|
802
|
+
return;
|
|
803
|
+
}
|
|
791
804
|
const mapping = CATEGORY_MAPPINGS[category];
|
|
792
805
|
if (!mapping) return;
|
|
793
806
|
if (category === "addon.updated") {
|
|
@@ -1202,6 +1215,56 @@ var AlertCenterAddon = class extends BaseAddon {
|
|
|
1202
1215
|
};
|
|
1203
1216
|
await this.emitAlert(alert);
|
|
1204
1217
|
}
|
|
1218
|
+
/**
|
|
1219
|
+
* A notification rule that cannot work (D905) — visible in-app even when no
|
|
1220
|
+
* rule listens for `rule-broken`. One card per RULE; a new reason updates it.
|
|
1221
|
+
*/
|
|
1222
|
+
async handleRuleBroken(event) {
|
|
1223
|
+
const ruleId = event.data["ruleId"];
|
|
1224
|
+
if (typeof ruleId !== "string" || ruleId.length === 0) return;
|
|
1225
|
+
const ruleName = typeof event.data["ruleName"] === "string" ? event.data["ruleName"] : ruleId;
|
|
1226
|
+
const reason = typeof event.data["reason"] === "string" ? event.data["reason"] : "unknown";
|
|
1227
|
+
const listed = event.data["offendingIds"];
|
|
1228
|
+
const offendingIds = Array.isArray(listed) ? listed.filter((id) => typeof id === "string") : [];
|
|
1229
|
+
const what = reason === "unparseable" ? "cannot be loaded and sends nothing — open it and save it again" : reason === "device-deleted" ? `still names a deleted device (${offendingIds.join(", ")}) and was switched off` : reason === "target-deleted" ? `still sends to a deleted destination (${offendingIds.join(", ")}) and was switched off` : "cannot work";
|
|
1230
|
+
const alert = {
|
|
1231
|
+
id: `nc-rule-broken:${ruleId}`,
|
|
1232
|
+
category: EventCategory.NotificationRuleBroken,
|
|
1233
|
+
severity: "warning",
|
|
1234
|
+
title: "Notification rule broken",
|
|
1235
|
+
message: `Rule "${ruleName}" ${what}.`,
|
|
1236
|
+
status: "active",
|
|
1237
|
+
read: false,
|
|
1238
|
+
createdAt: Date.now(),
|
|
1239
|
+
updatedAt: Date.now(),
|
|
1240
|
+
source: {
|
|
1241
|
+
type: "addon",
|
|
1242
|
+
id: "notification-center"
|
|
1243
|
+
},
|
|
1244
|
+
metadata: {
|
|
1245
|
+
ruleId,
|
|
1246
|
+
ruleName,
|
|
1247
|
+
reason,
|
|
1248
|
+
offendingIds,
|
|
1249
|
+
reasons: event.data["reasons"]
|
|
1250
|
+
}
|
|
1251
|
+
};
|
|
1252
|
+
await this.emitAlert(alert);
|
|
1253
|
+
}
|
|
1254
|
+
/** The rule works again — drop its broken-rule card. */
|
|
1255
|
+
async handleRuleRepaired(event) {
|
|
1256
|
+
const ruleId = event.data["ruleId"];
|
|
1257
|
+
if (typeof ruleId !== "string" || ruleId.length === 0) return;
|
|
1258
|
+
const stableId = `nc-rule-broken:${ruleId}`;
|
|
1259
|
+
try {
|
|
1260
|
+
await this.dismiss(stableId);
|
|
1261
|
+
} catch (err) {
|
|
1262
|
+
this.ctx.logger?.debug("NotificationRuleRepaired: dismiss failed (likely already dismissed)", { meta: {
|
|
1263
|
+
stableId,
|
|
1264
|
+
error: errMsg(err)
|
|
1265
|
+
} });
|
|
1266
|
+
}
|
|
1267
|
+
}
|
|
1205
1268
|
/** Stream online after an outage — drop the matching offline card. */
|
|
1206
1269
|
async handleStreamOnline(event) {
|
|
1207
1270
|
const deviceId = event.data["deviceId"];
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
//#region src/builtins/autotrack/autotrack-config.ts
|
|
8
8
|
var DEFAULT_AUTOTRACK_LOOP_CONFIG = {
|
|
9
9
|
deadZoneFraction: .5,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $r as errMsg, Ca as EventCategory, Et as bareAddonId, L as FIRST_LEVEL_MACRO_CLASSES, Xi as isEvent, ei as BaseAddon, tr as ptzAutotrackCapability } from "../../dist-
|
|
1
|
+
import { $r as errMsg, Ca as EventCategory, Et as bareAddonId, L as FIRST_LEVEL_MACRO_CLASSES, Xi as isEvent, ei as BaseAddon, tr as ptzAutotrackCapability } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
//#region src/builtins/autotrack/autotrack-config.ts
|
|
3
3
|
var DEFAULT_AUTOTRACK_LOOP_CONFIG = {
|
|
4
4
|
deadZoneFraction: .5,
|
|
@@ -3,9 +3,9 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
|
|
8
|
-
const require_restore_archive = require("../../restore-archive-
|
|
8
|
+
const require_restore_archive = require("../../restore-archive-D1uxP8Eb.js");
|
|
9
9
|
let node_crypto = require("node:crypto");
|
|
10
10
|
let node_fs_promises = require("node:fs/promises");
|
|
11
11
|
node_fs_promises = require_chunk.__toESM(node_fs_promises);
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Ca as EventCategory, Er as storageOccupancyCapability, Tt as backupCapability, Vn as mayWriteToLocation, ei as BaseAddon, ia as nodePin, va as toNodeId } from "../../dist-
|
|
1
|
+
import { Ca as EventCategory, Er as storageOccupancyCapability, Tt as backupCapability, Vn as mayWriteToLocation, ei as BaseAddon, ia as nodePin, va as toNodeId } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
|
|
3
|
-
import { _ as backupRecordStoresOf, a as BackupSnapshotRefusedError, d as ENCRYPTED_BACKUP_SUFFIX, f as generateBackupKeyPair, g as backupOrchestratorRecordKinds, i as BackupCancelledError, l as BackupKeyFormatError, m as parseBackupSecretKey, n as precheckRestoreKey, o as DEFAULT_BACKUP_DATABASES, p as parseBackupPublicKey, r as prepareRestoreArchive, s as SystemBackupService } from "../../restore-archive-
|
|
3
|
+
import { _ as backupRecordStoresOf, a as BackupSnapshotRefusedError, d as ENCRYPTED_BACKUP_SUFFIX, f as generateBackupKeyPair, g as backupOrchestratorRecordKinds, i as BackupCancelledError, l as BackupKeyFormatError, m as parseBackupSecretKey, n as precheckRestoreKey, o as DEFAULT_BACKUP_DATABASES, p as parseBackupPublicKey, r as prepareRestoreArchive, s as SystemBackupService } from "../../restore-archive-BYL7E5af.mjs";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
5
5
|
import * as fsp from "node:fs/promises";
|
|
6
6
|
import * as path$1 from "node:path";
|
|
7
|
-
import * as fs from "node:fs";
|
|
7
|
+
import * as fs$1 from "node:fs";
|
|
8
8
|
//#region src/builtins/backup-orchestrator/backup-databases.ts
|
|
9
9
|
/** Stable id of the seeded weekly schedule. */
|
|
10
10
|
var WEEKLY_SCHEDULE_ID = "weekly-events-history";
|
|
@@ -1018,7 +1018,7 @@ async function downloadArchiveToCache(input) {
|
|
|
1018
1018
|
location: input.locationId,
|
|
1019
1019
|
relativePath: input.filename
|
|
1020
1020
|
});
|
|
1021
|
-
const writeStream = fs.createWriteStream(input.cachePath);
|
|
1021
|
+
const writeStream = fs$1.createWriteStream(input.cachePath);
|
|
1022
1022
|
let offset = 0;
|
|
1023
1023
|
try {
|
|
1024
1024
|
while (offset < sizeBytes) {
|
|
@@ -2502,7 +2502,7 @@ var BackupOrchestratorAddon = class extends BaseAddon {
|
|
|
2502
2502
|
});
|
|
2503
2503
|
try {
|
|
2504
2504
|
let offset = 0;
|
|
2505
|
-
const stream = fs.createReadStream(input.cachePath, { highWaterMark: UPLOAD_CHUNK_BYTES });
|
|
2505
|
+
const stream = fs$1.createReadStream(input.cachePath, { highWaterMark: UPLOAD_CHUNK_BYTES });
|
|
2506
2506
|
for await (const rawChunk of stream) {
|
|
2507
2507
|
if (input.signal?.aborted) {
|
|
2508
2508
|
stream.destroy();
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_settle_sources = require("../../settle-sources-Bhsy57y-.js");
|
|
8
8
|
let zod = require("zod");
|
|
9
9
|
//#region src/builtins/calendars/calendar-color.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Mt as calendarsCapability, Ui as defineRecordKinds, _ as CalendarPreferencesSchema, ei as BaseAddon } from "../../dist-
|
|
1
|
+
import { Mt as calendarsCapability, Ui as defineRecordKinds, _ as CalendarPreferencesSchema, ei as BaseAddon } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as settleSourcesWithTimeout } from "../../settle-sources-CDtNC8ub.mjs";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
//#region src/builtins/calendars/calendar-color.ts
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
let zod = require("zod");
|
|
8
8
|
let _camstack_types_node = require("@camstack/types/node");
|
|
9
9
|
let node_path = require("node:path");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $r as errMsg, Bi as createEvent, Ca as EventCategory, E as DERIVED_CAMERA_SILENCED_CAP_NAMES, Gn as motionCapability, Hn as memoizePinnedFfmpeg, Ji as hydrateSchema, Nt as cameraGridLayoutCapability, Or as streamCatalogCapability, P as DeclaredDevices, Qr as DeviceType, X as MOTION_CLOSE_AFTER_MS, Xr as DeviceFeature, ei as BaseAddon, o as BaseDevice, qt as declarationOwnerNodeId, xr as snapshotCapability, zr as buildFfmpegArgs } from "../../dist-
|
|
1
|
+
import { $r as errMsg, Bi as createEvent, Ca as EventCategory, E as DERIVED_CAMERA_SILENCED_CAP_NAMES, Gn as motionCapability, Hn as memoizePinnedFfmpeg, Ji as hydrateSchema, Nt as cameraGridLayoutCapability, Or as streamCatalogCapability, P as DeclaredDevices, Qr as DeviceType, X as MOTION_CLOSE_AFTER_MS, Xr as DeviceFeature, ei as BaseAddon, o as BaseDevice, qt as declarationOwnerNodeId, xr as snapshotCapability, zr as buildFfmpegArgs } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { FfmpegProcess } from "@camstack/types/node";
|
|
4
4
|
import { join } from "node:path";
|
|
@@ -3,8 +3,8 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
7
|
-
const require_composition_sources = require("../../composition-sources-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
|
+
const require_composition_sources = require("../../composition-sources-BG0E76VO.js");
|
|
8
8
|
let zod = require("zod");
|
|
9
9
|
//#region src/builtins/shared/device-state-changed.ts
|
|
10
10
|
/** Structural narrowing helper for untrusted bus payloads. */
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { $r as errMsg, Bi as createEvent, Br as cloneStatefulExpressionMemory, Ca as EventCategory, Gr as compositionSliceKey, Hr as composedDeviceStableId, It as composerCapability, Jr as disarmRoseMemory, Kr as compositionSourceKey, Lt as compositionFieldKey, Ot as buildCapabilityLookup, P as DeclaredDevices, Qn as planComposition, Qr as DeviceType, Rr as COMPOSER_ADDON_ID, Ur as compositionFeatureEnabled, Vr as composedDeviceRef, Wr as compositionItemFieldPath, Yr as toExpressionValue, cn as evaluateCompositionField, dn as expressionContainsBuiltinCall, ei as BaseAddon, f as COMPOSED_ITEM_FIXED_FIELDS, o as BaseDevice, qr as createStatefulExpressionMemory, r as ALL_CAPABILITY_DEFINITIONS } from "../../dist-
|
|
2
|
-
import { n as normalizedNativeOwner } from "../../composition-sources-
|
|
1
|
+
import { $r as errMsg, Bi as createEvent, Br as cloneStatefulExpressionMemory, Ca as EventCategory, Gr as compositionSliceKey, Hr as composedDeviceStableId, It as composerCapability, Jr as disarmRoseMemory, Kr as compositionSourceKey, Lt as compositionFieldKey, Ot as buildCapabilityLookup, P as DeclaredDevices, Qn as planComposition, Qr as DeviceType, Rr as COMPOSER_ADDON_ID, Ur as compositionFeatureEnabled, Vr as composedDeviceRef, Wr as compositionItemFieldPath, Yr as toExpressionValue, cn as evaluateCompositionField, dn as expressionContainsBuiltinCall, ei as BaseAddon, f as COMPOSED_ITEM_FIXED_FIELDS, o as BaseDevice, qr as createStatefulExpressionMemory, r as ALL_CAPABILITY_DEFINITIONS } from "../../dist-CR7idLer.mjs";
|
|
2
|
+
import { n as normalizedNativeOwner } from "../../composition-sources-CqRsEC0a.mjs";
|
|
3
3
|
import { z } from "zod";
|
|
4
4
|
//#region src/builtins/shared/device-state-changed.ts
|
|
5
5
|
/** Structural narrowing helper for untrusted bus payloads. */
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_formatter = require("../../formatter-DqAKDlvN.js");
|
|
8
8
|
//#region src/builtins/console-logging/console-destination.ts
|
|
9
9
|
var LEVEL_RANK = {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ln as logDestinationCapability, ei as BaseAddon } from "../../dist-
|
|
1
|
+
import { Ln as logDestinationCapability, ei as BaseAddon } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
|
|
3
3
|
//#region src/builtins/console-logging/console-destination.ts
|
|
4
4
|
var LEVEL_RANK = {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
3
|
-
const require_dist = require("../../dist-
|
|
3
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
4
4
|
const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
|
|
5
|
-
const require_composition_sources = require("../../composition-sources-
|
|
5
|
+
const require_composition_sources = require("../../composition-sources-BG0E76VO.js");
|
|
6
6
|
const require_prefix_range = require("../../prefix-range-D_KueXbQ.js");
|
|
7
7
|
const require_prefix_walk = require("../../prefix-walk-Dv6MLZlM.js");
|
|
8
8
|
let zod = require("zod");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { $i as isSecretMarker, $r as errMsg, Bt as coreBlockComposition, Ht as coreBlockSourceKind, Ji as hydrateSchema, Kn as normalizeCoreBlockWrite, Kr as compositionSourceKey, Mr as validateComposition, Ot as buildCapabilityLookup, P as DeclaredDevices, Qn as planComposition, Ri as collectSecretMarkerRefs, Rt as compositionSourceRefs, Ui as defineRecordKinds, Ut as coreBlocksCapability, Vr as composedDeviceRef, Vt as coreBlockIdFromAddonId, Zt as describeComposableCaps, ar as replacedFieldKeys, ba as transformSecretWrite, cr as resolveCoreBlockEntry, ei as BaseAddon, ga as secretTreeFromSchema, h as CORE_BLOCK_ADDON_PREFIX, lr as resolveCoreBlockFiles, m as CORE_BLOCKS_ADDON_ID, p as COMPOSER_RUNNER_ID, pa as resolveSecretMarkers, r as ALL_CAPABILITY_DEFINITIONS, ta as isSecretRefOwnedBy, y as CoreBlockSchema, zt as coreBlockAddonId } from "../../dist-
|
|
1
|
+
import { $i as isSecretMarker, $r as errMsg, Bt as coreBlockComposition, Ht as coreBlockSourceKind, Ji as hydrateSchema, Kn as normalizeCoreBlockWrite, Kr as compositionSourceKey, Mr as validateComposition, Ot as buildCapabilityLookup, P as DeclaredDevices, Qn as planComposition, Ri as collectSecretMarkerRefs, Rt as compositionSourceRefs, Ui as defineRecordKinds, Ut as coreBlocksCapability, Vr as composedDeviceRef, Vt as coreBlockIdFromAddonId, Zt as describeComposableCaps, ar as replacedFieldKeys, ba as transformSecretWrite, cr as resolveCoreBlockEntry, ei as BaseAddon, ga as secretTreeFromSchema, h as CORE_BLOCK_ADDON_PREFIX, lr as resolveCoreBlockFiles, m as CORE_BLOCKS_ADDON_ID, p as COMPOSER_RUNNER_ID, pa as resolveSecretMarkers, r as ALL_CAPABILITY_DEFINITIONS, ta as isSecretRefOwnedBy, y as CoreBlockSchema, zt as coreBlockAddonId } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
|
|
3
|
-
import { t as describeCompositionSources } from "../../composition-sources-
|
|
3
|
+
import { t as describeCompositionSources } from "../../composition-sources-CqRsEC0a.mjs";
|
|
4
4
|
import { t as prefixRange } from "../../prefix-range-Dl0znowN.mjs";
|
|
5
5
|
import { n as unwrapStoredValue, t as loadPrefixed } from "../../prefix-walk-DAOBSyH1.mjs";
|
|
6
6
|
import { createRequire } from "node:module";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
//#region src/builtins/device-history/time/bucket-time.ts
|
|
8
8
|
/**
|
|
9
9
|
* Bucket arithmetic for the three rollup tiers (D850, plan §4/§5.5).
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as HISTORY_CATALOG, Ca as EventCategory, Ct as armRemovalReconcile, Gi as emitReadiness, O as DEVICE_HISTORY_ENERGY_KEY, Qr as DeviceType, ei as BaseAddon, en as deviceHistoryCapability, li as HISTORY_DEFAULT_MIN_INTERVAL_MS, nn as deviceRemovalHookCapability } from "../../dist-
|
|
1
|
+
import { B as HISTORY_CATALOG, Ca as EventCategory, Ct as armRemovalReconcile, Gi as emitReadiness, O as DEVICE_HISTORY_ENERGY_KEY, Qr as DeviceType, ei as BaseAddon, en as deviceHistoryCapability, li as HISTORY_DEFAULT_MIN_INTERVAL_MS, nn as deviceRemovalHookCapability } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
//#region src/builtins/device-history/time/bucket-time.ts
|
|
3
3
|
/**
|
|
4
4
|
* Bucket arithmetic for the three rollup tiers (D850, plan §4/§5.5).
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
|
|
8
8
|
const require_prefix_range = require("../../prefix-range-D_KueXbQ.js");
|
|
9
9
|
const require_prefix_walk = require("../../prefix-walk-Dv6MLZlM.js");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $i as isSecretMarker, $r as errMsg, $t as deviceExtensionCapability, Ai as WELL_KNOWN_TAB_MAP, Ca as EventCategory, Di as SECRET_CLEAR, F as DeviceStatusSchema, I as DeviceTombstoneSchema, In as locationIconKey, Mn as legacyAutoLinkIds, Pt as canonicalIconKey, Qi as isSecretClear, Qr as DeviceType, R as FieldClaimModeSchema, T as DAY_NAMES, Ui as defineRecordKinds, Wt as createDeviceExtensionProvider, Xn as parseStreamParamsFormPatch, Xr as DeviceFeature, Y as MINUTES_PER_DAY, Yi as isDeviceConfigCap, Yt as defineExtensionSlotProvider, Zi as isKeychainStoredField, Zr as DeviceRole, _a as sleep$1, ba as transformSecretWrite, br as siteZoneKey, c as CAMERA_SWITCH_ORDER, ea as isSecretMarkerLike, ei as BaseAddon, gn as formatMinutes, ha as secretTreeFromPaths, in as deviceStatusCapability, jt as buildStreamParamsConfigSchema, mr as runtimeStatePolicyFor, on as enumerateItemArrayFields, ot as STREAM_PROFILE_META, pa as resolveSecretMarkers, qn as normalizeUnit, r as ALL_CAPABILITY_DEFINITIONS, rn as deviceStateCapability, sn as enumerateSchemaFields, tn as deviceManagerCapability, u as CAP_NAMES_WITH_STATUS, un as expandContainer, xa as userError, ya as toSecretFieldView, z as FieldClaimSchema, zi as collectZodSecretPaths } from "../../dist-
|
|
1
|
+
import { $i as isSecretMarker, $r as errMsg, $t as deviceExtensionCapability, Ai as WELL_KNOWN_TAB_MAP, Ca as EventCategory, Di as SECRET_CLEAR, F as DeviceStatusSchema, I as DeviceTombstoneSchema, In as locationIconKey, Mn as legacyAutoLinkIds, Pt as canonicalIconKey, Qi as isSecretClear, Qr as DeviceType, R as FieldClaimModeSchema, T as DAY_NAMES, Ui as defineRecordKinds, Wt as createDeviceExtensionProvider, Xn as parseStreamParamsFormPatch, Xr as DeviceFeature, Y as MINUTES_PER_DAY, Yi as isDeviceConfigCap, Yt as defineExtensionSlotProvider, Zi as isKeychainStoredField, Zr as DeviceRole, _a as sleep$1, ba as transformSecretWrite, br as siteZoneKey, c as CAMERA_SWITCH_ORDER, ea as isSecretMarkerLike, ei as BaseAddon, gn as formatMinutes, ha as secretTreeFromPaths, in as deviceStatusCapability, jt as buildStreamParamsConfigSchema, mr as runtimeStatePolicyFor, on as enumerateItemArrayFields, ot as STREAM_PROFILE_META, pa as resolveSecretMarkers, qn as normalizeUnit, r as ALL_CAPABILITY_DEFINITIONS, rn as deviceStateCapability, sn as enumerateSchemaFields, tn as deviceManagerCapability, u as CAP_NAMES_WITH_STATUS, un as expandContainer, xa as userError, ya as toSecretFieldView, z as FieldClaimSchema, zi as collectZodSecretPaths } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
|
|
3
3
|
import { t as prefixRange } from "../../prefix-range-Dl0znowN.mjs";
|
|
4
4
|
import { t as loadPrefixed } from "../../prefix-walk-DAOBSyH1.mjs";
|
|
@@ -3,7 +3,7 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_formatter = require("../../formatter-DqAKDlvN.js");
|
|
8
8
|
//#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
|
|
9
9
|
var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ln as logDestinationCapability, ei as BaseAddon } from "../../dist-
|
|
1
|
+
import { Ln as logDestinationCapability, ei as BaseAddon } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
|
|
3
3
|
//#region src/builtins/hub-forwarder/hub-forwarder-destination.ts
|
|
4
4
|
var DEFAULT_OUTBOUND_BUFFER_SIZE = 500;
|
|
@@ -3,10 +3,10 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
|
|
8
|
-
const require_device_ca = require("../../device-ca-
|
|
9
|
-
const require_constants = require("../../constants-
|
|
8
|
+
const require_device_ca = require("../../device-ca-B-Txwl4W.js");
|
|
9
|
+
const require_constants = require("../../constants-BYJ4ni7h.js");
|
|
10
10
|
const require_platform_key_source = require("../../platform-key-source-Di7HrlGR.js");
|
|
11
11
|
let node_crypto = require("node:crypto");
|
|
12
12
|
let _camstack_types_node = require("@camstack/types/node");
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { An as keychainAdminCapability, Ca as EventCategory, G as KeychainResetRecordSchema, U as KEYCHAIN_RESET_TRIGGER_ACTOR, Ui as defineRecordKinds, W as KeychainAuditEntrySchema, ei as BaseAddon, jn as keychainCapability, la as parseSecretRef, oa as normalizeSecretOwner, qi as formatSecretScope } from "../../dist-
|
|
1
|
+
import { An as keychainAdminCapability, Ca as EventCategory, G as KeychainResetRecordSchema, U as KEYCHAIN_RESET_TRIGGER_ACTOR, Ui as defineRecordKinds, W as KeychainAuditEntrySchema, ei as BaseAddon, jn as keychainCapability, la as parseSecretRef, oa as normalizeSecretOwner, qi as formatSecretScope } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
import { t as require_read_all_rows } from "../../read-all-rows-TaPqdWNF.mjs";
|
|
3
|
-
import { d as JWT_SIGNING_KEY_REF, n as DEVICE_CA_KEY_REF, p as SYSTEM_SECRET_OWNER } from "../../device-ca-
|
|
4
|
-
import { a as MESH_CA_KEY_REF } from "../../constants-
|
|
3
|
+
import { d as JWT_SIGNING_KEY_REF, n as DEVICE_CA_KEY_REF, p as SYSTEM_SECRET_OWNER } from "../../device-ca-CQcB6yfj.mjs";
|
|
4
|
+
import { a as MESH_CA_KEY_REF } from "../../constants-CmGw1liQ.mjs";
|
|
5
5
|
import { n as getPlatformKeychainKey } from "../../platform-key-source-BWlq0jjn.mjs";
|
|
6
6
|
import { createCipheriv, createDecipheriv, createHmac, randomBytes, randomUUID, timingSafeEqual } from "node:crypto";
|
|
7
7
|
import { restrictDirToOwnerSync, restrictFileToOwnerSync, writeOwnerOnlyFileSync } from "@camstack/types/node";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
require("../../chunk-Cek0wNdY.js");
|
|
3
|
-
const require_dist = require("../../dist-
|
|
3
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
4
4
|
//#region src/builtins/liveness-monitor/liveness-checks.ts
|
|
5
5
|
var NO_DEVICES = "liveness:no-devices";
|
|
6
6
|
var ALL_OFFLINE = "liveness:all-devices-offline";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $r as errMsg, Bi as createEvent, Ca as EventCategory, ei as BaseAddon, it as RecordingStatusSchema, nt as RECORDING_SOURCE_CAMSTACK_ADDON } from "../../dist-
|
|
1
|
+
import { $r as errMsg, Bi as createEvent, Ca as EventCategory, ei as BaseAddon, it as RecordingStatusSchema, nt as RECORDING_SOURCE_CAMSTACK_ADDON } from "../../dist-CR7idLer.mjs";
|
|
2
2
|
//#region src/builtins/liveness-monitor/liveness-checks.ts
|
|
3
3
|
var NO_DEVICES = "liveness:no-devices";
|
|
4
4
|
var ALL_OFFLINE = "liveness:all-devices-offline";
|
|
@@ -3,11 +3,11 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-Cek0wNdY.js");
|
|
6
|
-
const require_dist = require("../../dist-
|
|
6
|
+
const require_dist = require("../../dist-Dwi4JA96.js");
|
|
7
7
|
const require_read_all_rows$1 = require("../../read-all-rows-CVoO1ONM.js");
|
|
8
8
|
const require_safe_buffer$1 = require("../../safe-buffer-D3aoa-7X.js");
|
|
9
9
|
const require_ms$1 = require("../../ms-LB3giGoU.js");
|
|
10
|
-
const require_device_ca = require("../../device-ca-
|
|
10
|
+
const require_device_ca = require("../../device-ca-B-Txwl4W.js");
|
|
11
11
|
let zod = require("zod");
|
|
12
12
|
let node_crypto = require("node:crypto");
|
|
13
13
|
node_crypto = require_chunk.__toESM(node_crypto);
|