@camstack/system 1.2.74 → 1.2.76
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/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.js +1 -1
- package/dist/builtins/addon-pages-aggregator/addon-pages-aggregator.addon.mjs +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.js +1 -1
- package/dist/builtins/addon-widgets-aggregator/addon-widgets-aggregator.addon.mjs +1 -1
- package/dist/builtins/alerts/alerts.addon.js +1 -1
- package/dist/builtins/alerts/alerts.addon.mjs +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.js +1 -1
- package/dist/builtins/backup-orchestrator/backup-orchestrator.addon.mjs +1 -1
- 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 +1 -1
- package/dist/builtins/core-blocks/core-blocks.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/doorbell/virtual-doorbell.addon.js +1 -1
- package/dist/builtins/doorbell/virtual-doorbell.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/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 +1 -1
- package/dist/builtins/local-auth/local-auth.addon.mjs +1 -1
- package/dist/builtins/local-network/local-network.addon.js +1 -1
- package/dist/builtins/local-network/local-network.addon.mjs +1 -1
- 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 +1 -1
- package/dist/builtins/platform-probe/index.js +1 -1
- package/dist/builtins/platform-probe/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 +20 -7
- package/dist/builtins/snapshot/index.mjs +20 -7
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.js +1 -1
- package/dist/builtins/sqlite-storage/filesystem-storage.addon.mjs +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.js +1 -1
- package/dist/builtins/sqlite-storage/sqlite-settings.addon.mjs +1 -1
- 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 +1 -1
- package/dist/builtins/system-config/system-config.addon.mjs +1 -1
- package/dist/builtins/winston-logging/index.js +1 -1
- package/dist/builtins/winston-logging/index.mjs +1 -1
- package/dist/{dist-I0WgqQQ-.js → dist-B1W4mT4z.js} +54 -7
- package/dist/{dist-Daxx9CB0.mjs → dist-CX8Z8M6S.mjs} +54 -7
- package/dist/index.js +9 -3
- package/dist/index.mjs +9 -3
- package/package.json +1 -1
|
@@ -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-B1W4mT4z.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,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, _ as addonPagesCapability, mt as BaseAddon, pt as errMsg } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, _ as addonPagesCapability, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.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";
|
|
@@ -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-B1W4mT4z.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,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, mt as BaseAddon, pt as errMsg, y as addonWidgetsCapability } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, mt as BaseAddon, pt as errMsg, y as addonWidgetsCapability } from "../../dist-CX8Z8M6S.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";
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
//#region src/builtins/alerts/prune-policy.ts
|
|
8
8
|
/**
|
|
9
9
|
* Ids older than `cutoffMs`, oldest first.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, Dt as createEvent, b as alertsCapability, mt as BaseAddon, n as AlertSchema, pt as errMsg } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, Dt as createEvent, b as alertsCapability, mt as BaseAddon, n as AlertSchema, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
//#region src/builtins/alerts/prune-policy.ts
|
|
3
3
|
/**
|
|
4
4
|
* Ids older than `cutoffMs`, oldest first.
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
let buffer = require("buffer");
|
|
9
9
|
let node_fs_promises = require("node:fs/promises");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, S as backupCapability, mt as BaseAddon } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, S as backupCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { randomBytes, randomUUID } from "node:crypto";
|
|
3
3
|
import { Buffer as Buffer$1 } from "buffer";
|
|
4
4
|
import * as fsp from "node:fs/promises";
|
|
@@ -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-B1W4mT4z.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 { mt as BaseAddon, q as logDestinationCapability } from "../../dist-
|
|
1
|
+
import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-CX8Z8M6S.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,6 +1,6 @@
|
|
|
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-B1W4mT4z.js");
|
|
4
4
|
let node_crypto = require("node:crypto");
|
|
5
5
|
let node_fs_promises = require("node:fs/promises");
|
|
6
6
|
node_fs_promises = require_chunk.__toESM(node_fs_promises);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { D as coreBlocksCapability, E as coreBlockIdFromAddonId, T as coreBlockAddonId, c as CoreBlockSchema, l as DeclaredDevices, mt as BaseAddon, o as CORE_BLOCKS_ADDON_ID, s as CORE_BLOCK_ADDON_PREFIX } from "../../dist-
|
|
1
|
+
import { D as coreBlocksCapability, E as coreBlockIdFromAddonId, T as coreBlockAddonId, c as CoreBlockSchema, l as DeclaredDevices, mt as BaseAddon, o as CORE_BLOCKS_ADDON_ID, s as CORE_BLOCK_ADDON_PREFIX } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
3
|
import * as fs from "node:fs/promises";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
let _camstack_types_node = require("@camstack/types/node");
|
|
9
9
|
//#region src/builtins/device-manager/adoption-job-engine.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { $ as parseStreamParamsFormPatch, A as deviceManagerCapability, Bt as EventCategory, Ct as WELL_KNOWN_TAB_MAP, F as enumerateItemArrayFields, I as enumerateSchemaFields, M as deviceStatusCapability, Mt as isDeviceConfigCap, Z as normalizeUnit, a as CAP_NAMES_WITH_STATUS, bt as DeviceType, j as deviceStateCapability, mt as BaseAddon, p as STREAM_PROFILE_META, pt as errMsg, t as ALL_CAPABILITY_DEFINITIONS, u as DeviceStatusSchema, vt as DeviceFeature, w as buildStreamParamsConfigSchema, yt as DeviceRole, zt as sleep } from "../../dist-
|
|
1
|
+
import { $ as parseStreamParamsFormPatch, A as deviceManagerCapability, Bt as EventCategory, Ct as WELL_KNOWN_TAB_MAP, F as enumerateItemArrayFields, I as enumerateSchemaFields, M as deviceStatusCapability, Mt as isDeviceConfigCap, Z as normalizeUnit, a as CAP_NAMES_WITH_STATUS, bt as DeviceType, j as deviceStateCapability, mt as BaseAddon, p as STREAM_PROFILE_META, pt as errMsg, t as ALL_CAPABILITY_DEFINITIONS, u as DeviceStatusSchema, vt as DeviceFeature, w as buildStreamParamsConfigSchema, yt as DeviceRole, zt as sleep } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
3
|
import { canonicalDeviceFingerprint } from "@camstack/types/node";
|
|
4
4
|
//#region src/builtins/device-manager/adoption-job-engine.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-B1W4mT4z.js");
|
|
7
7
|
//#region src/builtins/doorbell/trigger-engine.ts
|
|
8
8
|
/**
|
|
9
9
|
* Pure trigger logic for the virtual-doorbell builtin — edge detection over
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, C as bareAddonId, Dt as createEvent, H as isSameAddonId, N as doorbellCapability, bt as DeviceType, mt as BaseAddon, pt as errMsg } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, C as bareAddonId, Dt as createEvent, H as isSameAddonId, N as doorbellCapability, bt as DeviceType, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
//#region src/builtins/doorbell/trigger-engine.ts
|
|
3
3
|
/**
|
|
4
4
|
* Pure trigger logic for the virtual-doorbell builtin — edge detection over
|
|
@@ -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-B1W4mT4z.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 { mt as BaseAddon, q as logDestinationCapability } from "../../dist-
|
|
1
|
+
import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-CX8Z8M6S.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;
|
|
@@ -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-B1W4mT4z.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 { Bt as EventCategory, Dt as createEvent, mt as BaseAddon, pt as errMsg } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, Dt as createEvent, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.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,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-B1W4mT4z.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
node_crypto = require_chunk.__toESM(node_crypto);
|
|
9
9
|
let crypto$1 = require("crypto");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as __require, o as __toESM, t as __commonJSMin } from "../../chunk-CNf5ZN-e.mjs";
|
|
2
|
-
import { g as UserRecordSchema, m as ScopedTokenSchema, mt as BaseAddon, r as ApiKeyRecordSchema, ut as userManagementCapability, x as authProviderCapability } from "../../dist-
|
|
2
|
+
import { g as UserRecordSchema, m as ScopedTokenSchema, mt as BaseAddon, r as ApiKeyRecordSchema, ut as userManagementCapability, x as authProviderCapability } from "../../dist-CX8Z8M6S.mjs";
|
|
3
3
|
import * as crypto$2 from "node:crypto";
|
|
4
4
|
import { createHash, randomUUID, timingSafeEqual } from "node:crypto";
|
|
5
5
|
import nodeCrypto from "crypto";
|
|
@@ -1,6 +1,6 @@
|
|
|
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-B1W4mT4z.js");
|
|
4
4
|
let node_os = require("node:os");
|
|
5
5
|
node_os = require_chunk.__toESM(node_os);
|
|
6
6
|
//#region src/builtins/local-network/local-network.addon.ts
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, K as localNetworkCapability, mt as BaseAddon } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, K as localNetworkCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import * as os from "node:os";
|
|
3
3
|
//#region src/builtins/local-network/local-network.addon.ts
|
|
4
4
|
/**
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
//#region src/builtins/loki-logging/loki-payload.ts
|
|
8
8
|
/**
|
|
9
9
|
* Loki rejects a label name that is not a valid Prometheus label
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-
|
|
1
|
+
import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
//#region src/builtins/loki-logging/loki-payload.ts
|
|
3
3
|
/**
|
|
4
4
|
* Loki rejects a label name that is not a valid Prometheus label
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let node_child_process = require("node:child_process");
|
|
8
8
|
let node_util = require("node:util");
|
|
9
9
|
let node_os = require("node:os");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, Dt as createEvent, X as metricsProviderCapability, mt as BaseAddon } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, Dt as createEvent, X as metricsProviderCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { execFile, execFileSync } from "node:child_process";
|
|
3
3
|
import { promisify } from "node:util";
|
|
4
4
|
import * as os from "node:os";
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let node_child_process = require("node:child_process");
|
|
8
8
|
let node_util = require("node:util");
|
|
9
9
|
let node_os = require("node:os");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { o as __toESM } from "../../chunk-CNf5ZN-e.mjs";
|
|
2
|
-
import { Bt as EventCategory, P as enumerateInferenceDevices, et as platformProbeCapability, it as scoreRuntimes, kt as emitReadiness, mt as BaseAddon, pt as errMsg } from "../../dist-
|
|
2
|
+
import { Bt as EventCategory, P as enumerateInferenceDevices, et as platformProbeCapability, it as scoreRuntimes, kt as emitReadiness, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
|
|
3
3
|
import { execFile } from "node:child_process";
|
|
4
4
|
import { promisify } from "node:util";
|
|
5
5
|
import * as os from "node:os";
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
//#region src/builtins/remote-access-orchestrator/enabled-providers-reconcile.ts
|
|
8
8
|
/**
|
|
9
9
|
* Reconcile the durable `enabledProviders` set against authoritative
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Bt as EventCategory, mt as BaseAddon } from "../../dist-
|
|
1
|
+
import { Bt as EventCategory, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
//#region src/builtins/remote-access-orchestrator/enabled-providers-reconcile.ts
|
|
3
3
|
/**
|
|
4
4
|
* Reconcile the durable `enabledProviders` set against authoritative
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let zod = require("zod");
|
|
8
8
|
let node_crypto = require("node:crypto");
|
|
9
9
|
let _camstack_types_node = require("@camstack/types/node");
|
|
@@ -788,6 +788,13 @@ function parseVerifiedSnapshotLink(input) {
|
|
|
788
788
|
* answers inside it, short enough that a dead camera cannot stall the batch.
|
|
789
789
|
*/
|
|
790
790
|
var LINK_MINT_DEADLINE_MS = 2500;
|
|
791
|
+
/**
|
|
792
|
+
* A links RPC is one Viewer-wide batch. Never let one slow camera hold every
|
|
793
|
+
* fast camera behind its individual capture deadline: wait briefly for the
|
|
794
|
+
* common fast path, then mint from the cache as it stands. Slow captures keep
|
|
795
|
+
* running and their new generation is returned by the next 5 s poll.
|
|
796
|
+
*/
|
|
797
|
+
var LINK_BATCH_WAIT_MS = 750;
|
|
791
798
|
/** Frames older than this are never represented as current by the Viewer. */
|
|
792
799
|
var LINK_CURRENT_MAX_AGE_MS = 15e3;
|
|
793
800
|
/** Default cache window for non-battery cams (seconds). 10s feels live. */
|
|
@@ -1053,12 +1060,18 @@ var SnapshotAddon = class SnapshotAddon extends require_dist.BaseAddon {
|
|
|
1053
1060
|
const expMs = snapshotLinkExpiry(now, SNAPSHOT_LINK_TTL_MS);
|
|
1054
1061
|
const served = this.linkDataPlane !== null && secret !== null;
|
|
1055
1062
|
const prefix = this.linkRoutePrefix();
|
|
1056
|
-
const
|
|
1063
|
+
const sleepingByDevice = /* @__PURE__ */ new Map();
|
|
1064
|
+
const refreshes = input.targets.map(async (target) => {
|
|
1065
|
+
const width = target.width === void 0 ? void 0 : snapSnapshotWidth(target.width);
|
|
1066
|
+
this.subscriptions.note(target.deviceId, void 0, width, now);
|
|
1067
|
+
const sleeping = await this.isSleepingBatteryDevice(target.deviceId);
|
|
1068
|
+
sleepingByDevice.set(target.deviceId, sleeping);
|
|
1069
|
+
if (!sleeping) await this.awaitFreshEnough(target.deviceId);
|
|
1070
|
+
});
|
|
1071
|
+
await raceForResult(Promise.allSettled(refreshes), LINK_BATCH_WAIT_MS);
|
|
1072
|
+
const rows = input.targets.map((target) => {
|
|
1057
1073
|
const { deviceId } = target;
|
|
1058
1074
|
const width = target.width === void 0 ? void 0 : snapSnapshotWidth(target.width);
|
|
1059
|
-
this.subscriptions.note(deviceId, void 0, width, now);
|
|
1060
|
-
const sleeping = await this.isSleepingBatteryDevice(deviceId);
|
|
1061
|
-
if (!sleeping) await this.awaitFreshEnough(deviceId);
|
|
1062
1075
|
const capturedAt = this.cache.latest(deviceId)?.ts ?? null;
|
|
1063
1076
|
const answeredAt = Date.now();
|
|
1064
1077
|
return {
|
|
@@ -1076,9 +1089,9 @@ var SnapshotAddon = class SnapshotAddon extends require_dist.BaseAddon {
|
|
|
1076
1089
|
expiresAt: served ? expMs : null,
|
|
1077
1090
|
width: width ?? null,
|
|
1078
1091
|
neverCaptured: capturedAt === null,
|
|
1079
|
-
sleeping
|
|
1092
|
+
sleeping: sleepingByDevice.get(deviceId) ?? false
|
|
1080
1093
|
};
|
|
1081
|
-
})
|
|
1094
|
+
});
|
|
1082
1095
|
this.ctx.logger.debug("snapshot: minted links", { meta: {
|
|
1083
1096
|
targets: input.targets.length,
|
|
1084
1097
|
served,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as bareAddonId, Nt as nodePin, bt as DeviceType, i as BatteryStatusSchema, lt as streamQualityLabel, mt as BaseAddon, ot as snapshotCapability, pt as errMsg, vt as DeviceFeature } from "../../dist-
|
|
1
|
+
import { C as bareAddonId, Nt as nodePin, bt as DeviceType, i as BatteryStatusSchema, lt as streamQualityLabel, mt as BaseAddon, ot as snapshotCapability, pt as errMsg, vt as DeviceFeature } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { z } from "zod";
|
|
3
3
|
import { randomUUID } from "node:crypto";
|
|
4
4
|
import { signExpiringUrl, verifyExpiringUrl } from "@camstack/types/node";
|
|
@@ -783,6 +783,13 @@ function parseVerifiedSnapshotLink(input) {
|
|
|
783
783
|
* answers inside it, short enough that a dead camera cannot stall the batch.
|
|
784
784
|
*/
|
|
785
785
|
var LINK_MINT_DEADLINE_MS = 2500;
|
|
786
|
+
/**
|
|
787
|
+
* A links RPC is one Viewer-wide batch. Never let one slow camera hold every
|
|
788
|
+
* fast camera behind its individual capture deadline: wait briefly for the
|
|
789
|
+
* common fast path, then mint from the cache as it stands. Slow captures keep
|
|
790
|
+
* running and their new generation is returned by the next 5 s poll.
|
|
791
|
+
*/
|
|
792
|
+
var LINK_BATCH_WAIT_MS = 750;
|
|
786
793
|
/** Frames older than this are never represented as current by the Viewer. */
|
|
787
794
|
var LINK_CURRENT_MAX_AGE_MS = 15e3;
|
|
788
795
|
/** Default cache window for non-battery cams (seconds). 10s feels live. */
|
|
@@ -1048,12 +1055,18 @@ var SnapshotAddon = class SnapshotAddon extends BaseAddon {
|
|
|
1048
1055
|
const expMs = snapshotLinkExpiry(now, SNAPSHOT_LINK_TTL_MS);
|
|
1049
1056
|
const served = this.linkDataPlane !== null && secret !== null;
|
|
1050
1057
|
const prefix = this.linkRoutePrefix();
|
|
1051
|
-
const
|
|
1058
|
+
const sleepingByDevice = /* @__PURE__ */ new Map();
|
|
1059
|
+
const refreshes = input.targets.map(async (target) => {
|
|
1060
|
+
const width = target.width === void 0 ? void 0 : snapSnapshotWidth(target.width);
|
|
1061
|
+
this.subscriptions.note(target.deviceId, void 0, width, now);
|
|
1062
|
+
const sleeping = await this.isSleepingBatteryDevice(target.deviceId);
|
|
1063
|
+
sleepingByDevice.set(target.deviceId, sleeping);
|
|
1064
|
+
if (!sleeping) await this.awaitFreshEnough(target.deviceId);
|
|
1065
|
+
});
|
|
1066
|
+
await raceForResult(Promise.allSettled(refreshes), LINK_BATCH_WAIT_MS);
|
|
1067
|
+
const rows = input.targets.map((target) => {
|
|
1052
1068
|
const { deviceId } = target;
|
|
1053
1069
|
const width = target.width === void 0 ? void 0 : snapSnapshotWidth(target.width);
|
|
1054
|
-
this.subscriptions.note(deviceId, void 0, width, now);
|
|
1055
|
-
const sleeping = await this.isSleepingBatteryDevice(deviceId);
|
|
1056
|
-
if (!sleeping) await this.awaitFreshEnough(deviceId);
|
|
1057
1070
|
const capturedAt = this.cache.latest(deviceId)?.ts ?? null;
|
|
1058
1071
|
const answeredAt = Date.now();
|
|
1059
1072
|
return {
|
|
@@ -1071,9 +1084,9 @@ var SnapshotAddon = class SnapshotAddon extends BaseAddon {
|
|
|
1071
1084
|
expiresAt: served ? expMs : null,
|
|
1072
1085
|
width: width ?? null,
|
|
1073
1086
|
neverCaptured: capturedAt === null,
|
|
1074
|
-
sleeping
|
|
1087
|
+
sleeping: sleepingByDevice.get(deviceId) ?? false
|
|
1075
1088
|
};
|
|
1076
|
-
})
|
|
1089
|
+
});
|
|
1077
1090
|
this.ctx.logger.debug("snapshot: minted links", { meta: {
|
|
1078
1091
|
targets: input.targets.length,
|
|
1079
1092
|
served,
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
let node_fs_promises = require("node:fs/promises");
|
|
9
9
|
let node_path = require("node:path");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { R as filesystemBrowseCapability, ct as storageProviderCapability, mt as BaseAddon } from "../../dist-
|
|
1
|
+
import { R as filesystemBrowseCapability, ct as storageProviderCapability, mt as BaseAddon } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { randomUUID } from "node:crypto";
|
|
3
3
|
import { mkdir, readdir, realpath, statfs } from "node:fs/promises";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
let node_fs = require("node:fs");
|
|
9
9
|
let node_module = require("node:module");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { C as bareAddonId, Ft as parseJsonUnknown, O as dataStoreProviderCapability, dt as vectorDimFromBase64, f as RUNTIME_DEFAULTS, ft as vectorStoreCapability, k as decodeVectorBase64, mt as BaseAddon, pt as errMsg, wt as asJsonObject } from "../../dist-
|
|
1
|
+
import { C as bareAddonId, Ft as parseJsonUnknown, O as dataStoreProviderCapability, dt as vectorDimFromBase64, f as RUNTIME_DEFAULTS, ft as vectorStoreCapability, k as decodeVectorBase64, mt as BaseAddon, pt as errMsg, wt as asJsonObject } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { createRequire } from "node:module";
|
|
3
3
|
import { randomUUID } from "node:crypto";
|
|
4
4
|
import { statSync } from "node:fs";
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
let node_fs_promises = require("node:fs/promises");
|
|
8
8
|
node_fs_promises = require_chunk.__toESM(node_fs_promises);
|
|
9
9
|
let node_path = require("node:path");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Pt as parseJsonObject, at as settingsStoreCapability, h as StorageLocationTypeSchema, mt as BaseAddon, st as storageCapability } from "../../dist-
|
|
1
|
+
import { Pt as parseJsonObject, at as settingsStoreCapability, h as StorageLocationTypeSchema, mt as BaseAddon, st as storageCapability } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import * as fs from "node:fs/promises";
|
|
3
3
|
import * as path$1 from "node:path";
|
|
4
4
|
import { buildStorageLocationRegistry } from "@camstack/system";
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
//#region src/builtins/system-config/system-config.addon.ts
|
|
8
8
|
/**
|
|
9
9
|
* Built-in `system-config` addon — Phase 4 of the settings redesign.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jt as hydrateSchema, mt as BaseAddon, pt as errMsg } from "../../dist-
|
|
1
|
+
import { jt as hydrateSchema, mt as BaseAddon, pt as errMsg } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
//#region src/builtins/system-config/system-config.addon.ts
|
|
3
3
|
/**
|
|
4
4
|
* Built-in `system-config` addon — Phase 4 of the settings redesign.
|
|
@@ -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-B1W4mT4z.js");
|
|
7
7
|
const require_formatter = require("../../formatter-DqAKDlvN.js");
|
|
8
8
|
let node_path = require("node:path");
|
|
9
9
|
node_path = require_chunk.__toESM(node_path);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-
|
|
1
|
+
import { mt as BaseAddon, q as logDestinationCapability } from "../../dist-CX8Z8M6S.mjs";
|
|
2
2
|
import { t as formatLogLine } from "../../formatter-B7qW8bPJ.mjs";
|
|
3
3
|
import * as path$1 from "node:path";
|
|
4
4
|
import path from "node:path";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
let zod = require("zod");
|
|
2
|
-
//#region ../types/dist/event-category-
|
|
2
|
+
//#region ../types/dist/event-category-Cv9dO26A.mjs
|
|
3
3
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
4
4
|
EventCategory["SystemBoot"] = "system.boot";
|
|
5
5
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -15,6 +15,13 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
15
15
|
*/
|
|
16
16
|
EventCategory["SystemRestartCompleted"] = "system.restart-completed";
|
|
17
17
|
/**
|
|
18
|
+
* A newer addon or server-root package version was found by the
|
|
19
|
+
* authoritative registry check. Emitted once per
|
|
20
|
+
* `(target, packageName, currentVersion, latestVersion)` transition; repeated
|
|
21
|
+
* polling of the same result is deduplicated by the checker.
|
|
22
|
+
*/
|
|
23
|
+
EventCategory["UpdateAvailable"] = "update.available";
|
|
24
|
+
/**
|
|
18
25
|
* Readiness transition for a capability provider. Every producer emits
|
|
19
26
|
* this event on `onInitialize` completion, `onDestroy`, and
|
|
20
27
|
* `$node.reconnect`; every consumer that needs to gate on a cross-process
|
|
@@ -11933,8 +11940,35 @@ var NcDeliverySchema = zod.z.enum([
|
|
|
11933
11940
|
"immediate",
|
|
11934
11941
|
"track-end",
|
|
11935
11942
|
"device-event",
|
|
11936
|
-
"package-event"
|
|
11943
|
+
"package-event",
|
|
11944
|
+
"system-event"
|
|
11945
|
+
]);
|
|
11946
|
+
/**
|
|
11947
|
+
* Stable Notification Center vocabulary over infrastructure/liveness events.
|
|
11948
|
+
* Bus categories are normalized into these intent-level kinds so rules do not
|
|
11949
|
+
* depend on a provider's raw event name or payload shape.
|
|
11950
|
+
*/
|
|
11951
|
+
var NcSystemEventKindSchema = zod.z.enum([
|
|
11952
|
+
"camera-online",
|
|
11953
|
+
"camera-offline",
|
|
11954
|
+
"stream-online",
|
|
11955
|
+
"stream-offline",
|
|
11956
|
+
"node-online",
|
|
11957
|
+
"node-offline",
|
|
11958
|
+
"addon-update-available",
|
|
11959
|
+
"server-update-available"
|
|
11937
11960
|
]);
|
|
11961
|
+
/**
|
|
11962
|
+
* One coherent system-event condition. `kinds` is the required opt-in safety
|
|
11963
|
+
* gate; the remaining lists are optional narrowing filters relevant to the
|
|
11964
|
+
* selected kinds.
|
|
11965
|
+
*/
|
|
11966
|
+
var NcSystemEventConditionSchema = zod.z.object({
|
|
11967
|
+
kinds: zod.z.array(NcSystemEventKindSchema).min(1),
|
|
11968
|
+
deviceIds: zod.z.array(zod.z.number().int()).min(1).optional(),
|
|
11969
|
+
nodeIds: zod.z.array(zod.z.string().min(1)).min(1).optional(),
|
|
11970
|
+
packageNames: zod.z.array(zod.z.string().min(1)).min(1).optional()
|
|
11971
|
+
});
|
|
11938
11972
|
/** One weekly activation window. `startMinute > endMinute` crosses midnight. */
|
|
11939
11973
|
var NcScheduleWindowSchema = zod.z.object({
|
|
11940
11974
|
/** Days of week the window STARTS on (0 = Sunday … 6 = Saturday). */
|
|
@@ -12252,6 +12286,8 @@ var NcConditionsSchema = zod.z.object({
|
|
|
12252
12286
|
"picked-up",
|
|
12253
12287
|
"both"
|
|
12254
12288
|
]).optional(),
|
|
12289
|
+
/** Infrastructure/liveness/update event matcher (`system-event` delivery). */
|
|
12290
|
+
systemEvent: NcSystemEventConditionSchema.optional(),
|
|
12255
12291
|
/**
|
|
12256
12292
|
* PERSONAL-RULE custom zones (viewer-drawn). Inline normalized polygons
|
|
12257
12293
|
* (MaskShape vocabulary). A record passes when its bbox overlaps ANY
|
|
@@ -12471,7 +12507,8 @@ var NcTestResultSchema = zod.z.object({
|
|
|
12471
12507
|
"object-event",
|
|
12472
12508
|
"track",
|
|
12473
12509
|
"device-event",
|
|
12474
|
-
"package-event"
|
|
12510
|
+
"package-event",
|
|
12511
|
+
"system-event"
|
|
12475
12512
|
]),
|
|
12476
12513
|
deviceId: zod.z.number(),
|
|
12477
12514
|
timestamp: zod.z.number(),
|
|
@@ -12493,7 +12530,8 @@ var NcConditionDescriptorSchema = zod.z.object({
|
|
|
12493
12530
|
"schedule",
|
|
12494
12531
|
"device",
|
|
12495
12532
|
"package",
|
|
12496
|
-
"occupancy"
|
|
12533
|
+
"occupancy",
|
|
12534
|
+
"system"
|
|
12497
12535
|
]),
|
|
12498
12536
|
label: zod.z.string(),
|
|
12499
12537
|
/** Editor widget the UI renders — never hardcode per-condition forms. */
|
|
@@ -12511,7 +12549,8 @@ var NcConditionDescriptorSchema = zod.z.object({
|
|
|
12511
12549
|
"crossingSelect",
|
|
12512
12550
|
"polygonDraw",
|
|
12513
12551
|
"occupancy",
|
|
12514
|
-
"deviceState"
|
|
12552
|
+
"deviceState",
|
|
12553
|
+
"systemEvent"
|
|
12515
12554
|
]),
|
|
12516
12555
|
operator: zod.z.enum([
|
|
12517
12556
|
"in",
|
|
@@ -12570,7 +12609,8 @@ var NcHistoryRecordKindSchema = zod.z.enum([
|
|
|
12570
12609
|
"object-event",
|
|
12571
12610
|
"track-end",
|
|
12572
12611
|
"device-event",
|
|
12573
|
-
"package-event"
|
|
12612
|
+
"package-event",
|
|
12613
|
+
"system-event"
|
|
12574
12614
|
]);
|
|
12575
12615
|
/** Subject summary frozen on the row at fire time (survives rule/record edits). */
|
|
12576
12616
|
var NcHistorySubjectSchema = zod.z.object({
|
|
@@ -12578,7 +12618,14 @@ var NcHistorySubjectSchema = zod.z.object({
|
|
|
12578
12618
|
label: zod.z.string().optional(),
|
|
12579
12619
|
confidence: zod.z.number().optional(),
|
|
12580
12620
|
zones: zod.z.array(zod.z.string()),
|
|
12581
|
-
timestamp: zod.z.number()
|
|
12621
|
+
timestamp: zod.z.number(),
|
|
12622
|
+
systemEvent: zod.z.object({
|
|
12623
|
+
kind: NcSystemEventKindSchema,
|
|
12624
|
+
subject: zod.z.string(),
|
|
12625
|
+
title: zod.z.string(),
|
|
12626
|
+
body: zod.z.string(),
|
|
12627
|
+
data: zod.z.record(zod.z.string(), zod.z.unknown())
|
|
12628
|
+
}).optional()
|
|
12582
12629
|
});
|
|
12583
12630
|
/**
|
|
12584
12631
|
* One delivery-history row. This is a read-only VIEW over the durable
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
//#region ../types/dist/event-category-
|
|
2
|
+
//#region ../types/dist/event-category-Cv9dO26A.mjs
|
|
3
3
|
var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
4
4
|
EventCategory["SystemBoot"] = "system.boot";
|
|
5
5
|
EventCategory["SystemAddonsReady"] = "system.addons-ready";
|
|
@@ -15,6 +15,13 @@ var EventCategory = /* @__PURE__ */ function(EventCategory) {
|
|
|
15
15
|
*/
|
|
16
16
|
EventCategory["SystemRestartCompleted"] = "system.restart-completed";
|
|
17
17
|
/**
|
|
18
|
+
* A newer addon or server-root package version was found by the
|
|
19
|
+
* authoritative registry check. Emitted once per
|
|
20
|
+
* `(target, packageName, currentVersion, latestVersion)` transition; repeated
|
|
21
|
+
* polling of the same result is deduplicated by the checker.
|
|
22
|
+
*/
|
|
23
|
+
EventCategory["UpdateAvailable"] = "update.available";
|
|
24
|
+
/**
|
|
18
25
|
* Readiness transition for a capability provider. Every producer emits
|
|
19
26
|
* this event on `onInitialize` completion, `onDestroy`, and
|
|
20
27
|
* `$node.reconnect`; every consumer that needs to gate on a cross-process
|
|
@@ -11933,8 +11940,35 @@ var NcDeliverySchema = z.enum([
|
|
|
11933
11940
|
"immediate",
|
|
11934
11941
|
"track-end",
|
|
11935
11942
|
"device-event",
|
|
11936
|
-
"package-event"
|
|
11943
|
+
"package-event",
|
|
11944
|
+
"system-event"
|
|
11945
|
+
]);
|
|
11946
|
+
/**
|
|
11947
|
+
* Stable Notification Center vocabulary over infrastructure/liveness events.
|
|
11948
|
+
* Bus categories are normalized into these intent-level kinds so rules do not
|
|
11949
|
+
* depend on a provider's raw event name or payload shape.
|
|
11950
|
+
*/
|
|
11951
|
+
var NcSystemEventKindSchema = z.enum([
|
|
11952
|
+
"camera-online",
|
|
11953
|
+
"camera-offline",
|
|
11954
|
+
"stream-online",
|
|
11955
|
+
"stream-offline",
|
|
11956
|
+
"node-online",
|
|
11957
|
+
"node-offline",
|
|
11958
|
+
"addon-update-available",
|
|
11959
|
+
"server-update-available"
|
|
11937
11960
|
]);
|
|
11961
|
+
/**
|
|
11962
|
+
* One coherent system-event condition. `kinds` is the required opt-in safety
|
|
11963
|
+
* gate; the remaining lists are optional narrowing filters relevant to the
|
|
11964
|
+
* selected kinds.
|
|
11965
|
+
*/
|
|
11966
|
+
var NcSystemEventConditionSchema = z.object({
|
|
11967
|
+
kinds: z.array(NcSystemEventKindSchema).min(1),
|
|
11968
|
+
deviceIds: z.array(z.number().int()).min(1).optional(),
|
|
11969
|
+
nodeIds: z.array(z.string().min(1)).min(1).optional(),
|
|
11970
|
+
packageNames: z.array(z.string().min(1)).min(1).optional()
|
|
11971
|
+
});
|
|
11938
11972
|
/** One weekly activation window. `startMinute > endMinute` crosses midnight. */
|
|
11939
11973
|
var NcScheduleWindowSchema = z.object({
|
|
11940
11974
|
/** Days of week the window STARTS on (0 = Sunday … 6 = Saturday). */
|
|
@@ -12252,6 +12286,8 @@ var NcConditionsSchema = z.object({
|
|
|
12252
12286
|
"picked-up",
|
|
12253
12287
|
"both"
|
|
12254
12288
|
]).optional(),
|
|
12289
|
+
/** Infrastructure/liveness/update event matcher (`system-event` delivery). */
|
|
12290
|
+
systemEvent: NcSystemEventConditionSchema.optional(),
|
|
12255
12291
|
/**
|
|
12256
12292
|
* PERSONAL-RULE custom zones (viewer-drawn). Inline normalized polygons
|
|
12257
12293
|
* (MaskShape vocabulary). A record passes when its bbox overlaps ANY
|
|
@@ -12471,7 +12507,8 @@ var NcTestResultSchema = z.object({
|
|
|
12471
12507
|
"object-event",
|
|
12472
12508
|
"track",
|
|
12473
12509
|
"device-event",
|
|
12474
|
-
"package-event"
|
|
12510
|
+
"package-event",
|
|
12511
|
+
"system-event"
|
|
12475
12512
|
]),
|
|
12476
12513
|
deviceId: z.number(),
|
|
12477
12514
|
timestamp: z.number(),
|
|
@@ -12493,7 +12530,8 @@ var NcConditionDescriptorSchema = z.object({
|
|
|
12493
12530
|
"schedule",
|
|
12494
12531
|
"device",
|
|
12495
12532
|
"package",
|
|
12496
|
-
"occupancy"
|
|
12533
|
+
"occupancy",
|
|
12534
|
+
"system"
|
|
12497
12535
|
]),
|
|
12498
12536
|
label: z.string(),
|
|
12499
12537
|
/** Editor widget the UI renders — never hardcode per-condition forms. */
|
|
@@ -12511,7 +12549,8 @@ var NcConditionDescriptorSchema = z.object({
|
|
|
12511
12549
|
"crossingSelect",
|
|
12512
12550
|
"polygonDraw",
|
|
12513
12551
|
"occupancy",
|
|
12514
|
-
"deviceState"
|
|
12552
|
+
"deviceState",
|
|
12553
|
+
"systemEvent"
|
|
12515
12554
|
]),
|
|
12516
12555
|
operator: z.enum([
|
|
12517
12556
|
"in",
|
|
@@ -12570,7 +12609,8 @@ var NcHistoryRecordKindSchema = z.enum([
|
|
|
12570
12609
|
"object-event",
|
|
12571
12610
|
"track-end",
|
|
12572
12611
|
"device-event",
|
|
12573
|
-
"package-event"
|
|
12612
|
+
"package-event",
|
|
12613
|
+
"system-event"
|
|
12574
12614
|
]);
|
|
12575
12615
|
/** Subject summary frozen on the row at fire time (survives rule/record edits). */
|
|
12576
12616
|
var NcHistorySubjectSchema = z.object({
|
|
@@ -12578,7 +12618,14 @@ var NcHistorySubjectSchema = z.object({
|
|
|
12578
12618
|
label: z.string().optional(),
|
|
12579
12619
|
confidence: z.number().optional(),
|
|
12580
12620
|
zones: z.array(z.string()),
|
|
12581
|
-
timestamp: z.number()
|
|
12621
|
+
timestamp: z.number(),
|
|
12622
|
+
systemEvent: z.object({
|
|
12623
|
+
kind: NcSystemEventKindSchema,
|
|
12624
|
+
subject: z.string(),
|
|
12625
|
+
title: z.string(),
|
|
12626
|
+
body: z.string(),
|
|
12627
|
+
data: z.record(z.string(), z.unknown())
|
|
12628
|
+
}).optional()
|
|
12582
12629
|
});
|
|
12583
12630
|
/**
|
|
12584
12631
|
* One delivery-history row. This is a read-only VIEW over the durable
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
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-B1W4mT4z.js");
|
|
4
4
|
const require_builtins_alerts_alerts_addon = require("./builtins/alerts/alerts.addon.js");
|
|
5
5
|
require("./builtins/alerts/index.js");
|
|
6
6
|
const require_formatter = require("./formatter-DqAKDlvN.js");
|
|
@@ -407,11 +407,17 @@ function proxyToUpstream(opts) {
|
|
|
407
407
|
path: upstreamPath,
|
|
408
408
|
headers
|
|
409
409
|
}, (upRes) => {
|
|
410
|
-
clientRes.writeHead(upRes.statusCode ?? 502,
|
|
410
|
+
clientRes.writeHead(upRes.statusCode ?? 502, {
|
|
411
|
+
"access-control-allow-origin": "*",
|
|
412
|
+
...upRes.headers
|
|
413
|
+
});
|
|
411
414
|
upRes.pipe(clientRes);
|
|
412
415
|
});
|
|
413
416
|
upstream.on("error", (err) => {
|
|
414
|
-
if (!clientRes.headersSent) clientRes.writeHead(502, {
|
|
417
|
+
if (!clientRes.headersSent) clientRes.writeHead(502, {
|
|
418
|
+
"content-type": "application/json",
|
|
419
|
+
"access-control-allow-origin": "*"
|
|
420
|
+
});
|
|
415
421
|
clientRes.end(JSON.stringify({
|
|
416
422
|
error: "data-plane upstream error",
|
|
417
423
|
detail: String(err)
|
package/dist/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as __toCommonJS, i as __require, n as __esmMin, o as __toESM$1, r as __exportAll, t as __commonJSMin$1 } from "./chunk-CNf5ZN-e.mjs";
|
|
2
|
-
import { At as expandCapMethods, B as isCollectionArrayMethod, Bt as EventCategory$1, Dt as createEvent, Et as asString$1, Ft as parseJsonUnknown$1, G as lifecycleJobSchema, It as readinessKey, J as logLevelAtMost, L as extractNestedAddonId, Lt as resolveCapMount, Ot as emitDownForOwnedCaps, Pt as parseJsonObject, Q as objectInputDeclaresAddonId, Rt as scopeKey, St as ReadinessTimeoutError, Tt as asNumber, U as isVoidInput, V as isObjectInput, W as kebabToCamel, Y as looseSchema, _t as DEVICE_STATUS_METHOD, d as METHOD_ACCESS_MAP, f as RUNTIME_DEFAULTS, gt as DEVICE_SETTINGS_CONTRIBUTION_METHODS, ht as DATAPLANE_SECRET_HEADER$1, nt as scopesAllowAddon, pt as errMsg$1, rt as scopesAllowDeviceCap, t as ALL_CAPABILITY_DEFINITIONS, tt as procedureAuthKey, v as addonSettingsCapability, wt as asJsonObject$1, xt as ReadinessRegistry, z as isArrayOutputSchema } from "./dist-
|
|
2
|
+
import { At as expandCapMethods, B as isCollectionArrayMethod, Bt as EventCategory$1, Dt as createEvent, Et as asString$1, Ft as parseJsonUnknown$1, G as lifecycleJobSchema, It as readinessKey, J as logLevelAtMost, L as extractNestedAddonId, Lt as resolveCapMount, Ot as emitDownForOwnedCaps, Pt as parseJsonObject, Q as objectInputDeclaresAddonId, Rt as scopeKey, St as ReadinessTimeoutError, Tt as asNumber, U as isVoidInput, V as isObjectInput, W as kebabToCamel, Y as looseSchema, _t as DEVICE_STATUS_METHOD, d as METHOD_ACCESS_MAP, f as RUNTIME_DEFAULTS, gt as DEVICE_SETTINGS_CONTRIBUTION_METHODS, ht as DATAPLANE_SECRET_HEADER$1, nt as scopesAllowAddon, pt as errMsg$1, rt as scopesAllowDeviceCap, t as ALL_CAPABILITY_DEFINITIONS, tt as procedureAuthKey, v as addonSettingsCapability, wt as asJsonObject$1, xt as ReadinessRegistry, z as isArrayOutputSchema } from "./dist-CX8Z8M6S.mjs";
|
|
3
3
|
import { AlertCenterAddon } from "./builtins/alerts/alerts.addon.mjs";
|
|
4
4
|
import "./builtins/alerts/index.mjs";
|
|
5
5
|
import { t as formatLogLine } from "./formatter-B7qW8bPJ.mjs";
|
|
@@ -399,11 +399,17 @@ function proxyToUpstream(opts) {
|
|
|
399
399
|
path: upstreamPath,
|
|
400
400
|
headers
|
|
401
401
|
}, (upRes) => {
|
|
402
|
-
clientRes.writeHead(upRes.statusCode ?? 502,
|
|
402
|
+
clientRes.writeHead(upRes.statusCode ?? 502, {
|
|
403
|
+
"access-control-allow-origin": "*",
|
|
404
|
+
...upRes.headers
|
|
405
|
+
});
|
|
403
406
|
upRes.pipe(clientRes);
|
|
404
407
|
});
|
|
405
408
|
upstream.on("error", (err) => {
|
|
406
|
-
if (!clientRes.headersSent) clientRes.writeHead(502, {
|
|
409
|
+
if (!clientRes.headersSent) clientRes.writeHead(502, {
|
|
410
|
+
"content-type": "application/json",
|
|
411
|
+
"access-control-allow-origin": "*"
|
|
412
|
+
});
|
|
407
413
|
clientRes.end(JSON.stringify({
|
|
408
414
|
error: "data-plane upstream error",
|
|
409
415
|
detail: String(err)
|